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" 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"
/>
</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" 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~