Struts+Spring+Mybatis+Mysql

使用 SSM 三大框架 用Spring的注解形式  做一个注册的案例


1.ssm所需要的jar包



2.web.xml的配置

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!-- spring容器的初始化 -->
<listener>
  <listener-class>
     org.springframework.web.context.ContextLoaderListener
  </listener-class>
</listener>

<!-- 指定加载的配置文件 -->
<context-param>
   <param-name>
       contextConfigLocation
   </param-name>
   <param-value>
     classpath*:applicationContext*.xml
   </param-value>
</context-param>  

<filter>
   <filter-name>struts2</filter-name>
   <filter-class>
  	   org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
   </filter-class>
    <init-param>		
      <param-name>config</param-name>
      <param-value>struts-default.xml,struts-plugin.xml,struts.xml</param-value>
   </init-param>	
</filter>
<filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app></span>

3.applicationContext.xml配置

<span style="font-size:18px;"><?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:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context-3.0.xsd
         http://www.springframework.org/schema/tx
     	 http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
         http://www.springframework.org/schema/aop
         http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
         
          <!-- 采用注释的方式配置bean -->  
          <context:annotation-config/> 
          <!-- 配置要扫描的包 -->  
         <span style="color:#FF0000;"> <context:component-scan base-package="com.ssm.demo"></context:component-scan>  </span>
         
          <!-- 数据库配置文件位置 -->  
         <span style="color:#FF0000;"> <context:property-placeholder location="classpath:jdbc-mysql.properties"/></span>
          
         <!-- 配置数据源DataSource -->
         <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
         <property name="driverClassName">
			<value>${jdbc.driverClassName}</value>
		 </property>
		 <property name="url">
			<value>${jdbc.url}</value>
		 </property>
		 <property name="username">
			<value>${jdbc.username}</value>
		 </property>
		 <property name="password">
			<value>${jdbc.password}</value>
		 </property>
        </bean>
   
         <!-- 配置mybitasSqlSessionFactoryBean -->  
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
           <property name="dataSource" ref="dataSource" />  
           <property name="configLocation" value="classpath:mybatis-config.xml"></property>  
        </bean>  
      
        <!-- 配置SqlSessionTemplate -->  
        <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">  
         <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" />  
        </bean>  
      
        <!-- 事务配置 -->  
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  
          <property name="dataSource" ref="dataSource" />  
       </bean>  
      </beans></span>

4.mybatis-config.xml的配置

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">  
<configuration>
  <!-- 允许自动主键  -->
  <settings>
       <setting name="useGeneratedKeys" value="true"/> 
  </settings>
 
  <!-- 起别名 -->
  <typeAliases>
  <span style="color:#CC0000;"> <typeAlias type="com.ssm.demo.pojo.Users" alias="users"/></span>
  </typeAliases>
  
  <mappers>
    <span style="color:#CC0000;"><mapper resource="com/ssm/demo/persistence/IUsersMapper.xml"/></span>
  </mappers>
</configuration></span>

5.jdbc-mysql.properties文件

<span style="font-size:18px;">jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
jdbc.username=root
jdbc.password=123456

</span>


6.Users的实体类

<span style="font-size:18px;">package com.ssm.demo.pojo;
import java.io.Serializable;

@SuppressWarnings("serial")
public class Users implements Serializable {
  private Integer id;
  private String name;
  private String pwd;

public Integer getId() {
	return id;
}
public void setId(Integer id) {
	this.id = id;
}
public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public String getPwd() {
	return pwd;
}
public void setPwd(String pwd) {
	this.pwd = pwd;
}
public Users(String name, String pwd) {
	super();
	this.name = name;
	this.pwd = pwd;
}
public Users() {
	super();
} 
}</span>

7.IUsersMapper接口类的方法

<span style="font-size:18px;">package com.ssm.demo.persistence;

import com.ssm.demo.pojo.Users;

public interface IUsersMapper {
    //添加
 public void inser_users(Users users);
}</span>

8.IUsersMapper.xml的配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 导入那个接口类 然后实现接口中方法 -->
<span style="color:#FF0000;"><mapper namespace="com.ssm.demo.persistence.IUsersMapper"></span>

<insert <span style="color:#FF0000;">id="inser_users"</span> <span style="color:#FF0000;">parameterType="users"</span> useGeneratedKeys="true">
    insert into users(id,name,pwd) values(null,#{name},#{pwd})
</insert>
</mapper>


9,UsersDao类

<span style="font-size:18px;">@Repository("usersDao")
public class UsersDao  implements IUsersDao{

	@Autowired
	private SqlSessionTemplate sqlSessionTemplate

      public void insert_Users(Users users) {
		System.out.println("Dao类的添加数据的方法");
		//IUsersMapper  iusersMapper=sqlSessionTemplate.getMapper(IUsersMapper.class);
		//iusersMapper.inser_users(users);          
               sqlSessionTemplate.insert("inser_users", users)
	}
}</span>

10.UsersServlet类

<span style="font-size:18px;">@Service("usersServlet")
public class UsersServlet implements IUsersServlet {

	@Autowired
	private IUsersDao usersDao;
 	
	public void insert_Users(Users users) {	
	usersDao.insert_Users(users);
	}</span>


11 .Add.action类

<pre name="code" class="java"><span style="font-size:18px;">@Controller("Add")
public class Add_action {

	@Autowired
	private IUsersServlet usersServlet;
	private String name;//用户名
	private String pwd;//密码
	
	public String getName() {
		return name;
	}
	 public void setName(String name) {
		 this.name = name;
	}
  	public String getPwd() {
  		return pwd;
	}
       public void setPwd(String pwd) {
		 this.pwd = pwd;
 	}
	public String execute(){

 		Users users=new Users(name, pwd);
 		usersServlet.insert_Users(users);
		 return "SCCE";
	 }
 }</span>


 

12.struts.xml的配置

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
   <package name="default" extends="struts-default" namespace="/">
    <!-- Add就是Add_action中@Controller("Add")-->  
    <action name="AddUsers" class="Add"></span>
       <result name="SCCE">/All.jsp</result>
     </action>
   </package>
</struts></span>

13.注册页面

<span style="font-size:18px;"><body>
   <center>
    <form action="AddUsers" method="post">
      用户名:<input type="text" name="name"><br/>
      密 码:<input type="text" name="pwd"><br/>
      <input type="submit" value="添加">
    </form>
   </center>
  </body></span>






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值