当前位置: 代码迷 >> Web前端 >> 1003――――自动筹建SSH框架 1004――――SSH框架手动搭建
  详细解决方案

1003――――自动筹建SSH框架 1004――――SSH框架手动搭建

热度:409   发布时间:2014-01-08 00:30:58.0
1003――――自动搭建SSH框架 1004――――SSH框架手动搭建
文章只是做一个记录,以便日后查阅 
本人技术有限,有误的地方请友善指出,谢谢,O(∩_∩)O~


其实昨天已经写好   只是附件一直没法成功上传  所以就没有发表
现在就两部分内容一起发好了
一、自动配置
二、手动配置

1003_____SSH框架搭建第一步



接着上一篇说哈O(∩_∩)O~

前面struts已经搭建好了 ,接下来
>add spring capabilities 【具体方法自己查】
>切换到myeclipse  database explorer 》 new database connection driver 建立数据库连接
>add hibernate capabilities 【具体方法自己查】
> 建数据库  创建表

>新建一个daoimpl
package dao.impl;

import ibook.entity.Register;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;


public class TestDaoImpl {
public int test=90;
private SessionFactory sessionFactory;
private Session session;

public void test(){
if (session==null) {
session = sessionFactory.openSession();
}else {
session = sessionFactory.getCurrentSession();
}
Register register = new Register();
register.setRegisterId("123");
register.setEmail("test@163.com");
register.setPassword("12345");
register.setCreateDate(null);//问题一,  这里不知道怎么弄  new Date() 的时候要报错
Transaction transaction = session.beginTransaction();
session.save(register);
transaction.commit();

}

public SessionFactory getSessionFactory() {
return sessionFactory;
}

public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
}

>修改applicationContext.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">


<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver">
</property>
<property name="url" value="jdbc:mysql://localhost:3306/aibook">
</property>
<property name="username" value="root"></property>
<property name="password" value="abc"></property>
</bean>

<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="annotatedClasses">
<list>
<value>ibook.entity.Register</value>
</list>
</property>
</bean>

<bean id="testDaoImpl" class="dao.impl.TestDaoImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>



</beans>

>新建junit测试
package test;

import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;

import dao.impl.TestDaoImpl;


public class TestDaoImplTest {

private ApplicationContext context = null;  
private TestDaoImpl testDaoImpl = null;
   
    @Before
    public void setUp() throws Exception  
    {     
    System.out.println("start");
         context = new FileSystemXmlApplicationContext("src/applicationContext.xml");
         testDaoImpl = (TestDaoImpl) context.getBean("testDaoImpl");
    }  
    
@Test
public void testTest(){
context = new FileSystemXmlApplicationContext("src/applicationContext.xml");
         testDaoImpl = (TestDaoImpl) context.getBean("testDaoImpl");
testDaoImpl.test();
}

public static void main(String[] args) {
new TestDaoImplTest().testTest();
}
}
>结构图



当前问题:这里存时间的时候,要报错,暂时先存为null,O(∩_∩)O~
下期进度:
>解决当前问题
>看看如何手动配置spring和hibernate 



针对存时间报错这个问题,刚查了一下,数据库中应该把格式设置为datetime ,存的时候register.setCreateDate(new Date());就可以了
date和datetime的区别,我也查了一下,这里就不多说
如果非要设置成date类型,怎么做呢?我目前还不知道,哈哈 



二、接下来就要看看怎么实现手动配置了
不知道我的方法对不对啊 O(∩_∩)O~


1,首先去官网下载struts,hibernate,spring的api,里面包含了需要用到的jar包,这里不再赘述
2,将包添加到user  library里面 【注意,hibernate的jar里面有一个required文件,就添加这里面的jar包就好,其他的需要的时候再添加】
3,添加需要的user library到项目中
4,把1003中相关文件拷贝过来
我以为这样就可以运行成功,但是很遗憾,报错了,原来是缺少包
commons-dbcp.jar
commons-logging.jar
commons-pool.jar
mysql-connector-java.jar
其实中途还有一点错,就是我applicationContext.xml里面配置的是hibernate3,但我这次添加的是hibernate4的jar包,所以一直报错,后来上网查了,修改一下配置就可以了 
废话少说,上结构图O(∩_∩)O~








下一次的任务:  action   service  dao  entity  各层的创建梳理,便于与数据库的交互O(∩_∩)O~