eclipse ssh整合出现的那些bug

今天开始正式搞毕设了,生活依旧很忙,但一定要杜绝碌碌无为!

首先是其实我看书没有用,所以找了一个视频跟着从头做了一下,也就是把ssh环境搭好,也是花了很长时间啊,所以上学的时候一定要好好学习,好好敲代码啊,要还的。。。

废话不多说了,开始回忆过程。

1.创建web项目,导入jar包到webcontent/WEB-INF/lib。

2.前端我是不会搞的,这辈子不会搞得,难受,所以copy到we'b'conent

 

3.开始主题,创建一个UserAction类继承ActionSupport,写一个login方法

User类,变量uid,name,pwd等,并创建User.hbm.xml文档 uid为自动<generator class="native"/>

4.开始配置文件

4.1  struts.xml------------

<action name="user_*" class="userAction" method="{1}">
<result name="login">login.html</result>

4.2hibernate.cfg.xml-----------

<!-- 自动创表 -->
<property name="hibernate.hbm2ddl.auto">update</property>

因为里面没加这句话所以最后启动tomcat没报错也没自动建表

4.3  spring的配置文件,(配置文件都是可以自己起名字随便放位置的)但是名字一定要和web.xml文档里一致,血的教训啊

4.4 总的web.xml文档位置也是webcontent/WEB-INF/lib。

4.4.1 首先配置struts2的过滤器

<!-- Struts2的核心过滤器 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

4.4.2 spring的监听器及指定位置

<!-- 配置Spring的核心监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<!-- 指定位置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-common.xml</param-value>
</context-param>

就是粗体字一定要和自己的spring配置文件名字一直啊

5开始整合

5.1spring与struts2整合

<bean id="userAction" class="cn.action.UserAction" scope="prototype"></property>

红字处一定要注意和自己的类名包名一致啊,其实大多数错误都是xml文件中路径搞错了

5.2spring与hibernate整合

  5.2.1把hibernate中的数据驱动,连接信息都从hibernate的xml文档中copy到spring的xml文档中

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<!-- 数据库驱动 -->
<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
<!-- 数据库连接信息 -->
<property name="jdbcUrl" value="jdbc:mysql:///db_homeaccount"></property>
<property name="user" value="root"></property>
<property name="password" value="1234"></property>
</bean>

红色字体还是要注意啊,不要随心所欲

  5.2.2配置sessionFactory

<!-- 配置sessionFactory -->

<bean id="sessionFactory"
class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="classpath:hibernate.cfg.xml">
</property>

</bean>

  5.2.3事务配置

<!-- 事务配置 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>

</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>

6.注入

6.1service注入action   UserActon类中

private UserService userService;

public void setUserService(UserService userService) {
this.userService = userService;
}

6.2创建dao包,userdao接口,接口实现类userdaoimpl

 

6.3dao注入service

service类中

private UserDao userDao;

public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}

6.4daoimpl中加入hibernateTemplate

private HibernateTemplate hibernateTemplate;

public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}

6.5在spring配置文件中注入配置文件

<bean id="userAction" class="cn.action.UserAction" scope="prototype">
<property name="userService" ref="userService"></property>
</bean>
<bean id="userService" class="cn.service.UserService">
<property name="userDao" ref="userDaoImpl"></property>
</bean>
<bean id="userDaoImpl" class="cn.dao.UserDaoImdl">
<property name="hibernateTemplate" ref="hibernateTemplate"></property>
</bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>

引号里面的内容一定要检查清楚,错误的根源。

7数据库创建好,部署到tomcat,启动服务器,看数据库中表自动创建了就说明配置好了

 

posted @ 2019-03-29 16:50  pjc的乖宝宝  阅读(183)  评论(0编辑  收藏  举报