Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构

 

 

这篇文章的ssm架构事务是xml形式的,其实都是差不多,其实公司用注解事务更多一些,因为容易控制。

代码我也是放在git上面了。

如果你不想看文章,可以直接下载源码浏览,

1、https://gitee.com/redpigstu/ssm_demo_xml

2、https://gitee.com/imjcoder/ssm_demo_interface

1、在eclipse中新建maven项目
新建完你的项目如图:

Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构_第1张图片

这时候java、test都没有,需要简单配置下,右击项目选择最后一个属性:

做一些配置

Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构_第2张图片Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构_第3张图片Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构_第4张图片

之后你的项目会如下图:

Maven+SpringMvc4+MyBatis+Jdk8+整合ssm架构_第5张图片

2、下面开始配置把相关的pom里面的依赖加进来

 


  4.0.0
  ssm_demo
  ssm_demo
  war
  0.0.1-SNAPSHOT
  ssm_demo Maven Webapp
  http://maven.apache.org


		
			junit
			junit
			3.8.1
			test
		
		
		
		
		
		
			org.springframework
			spring-test
			4.3.3.RELEASE
		
		
			org.springframework
			spring-core
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-context
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-context-support
			4.3.3.RELEASE
			jar
			compile
		
		
		
			org.springframework
			spring-beans
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-expression
			4.3.3.RELEASE
		
		

		
		
		
			org.springframework
			spring-aop
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-aspects
			4.3.3.RELEASE
		
		
		
			org.aspectj
			aspectjrt
			1.8.5
		
		
			org.aspectj
			aspectjweaver
			1.8.5
		
		

		
		
		
			org.springframework
			spring-web
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-webmvc
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-websocket
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-webmvc-portlet
			4.3.3.RELEASE
		

		

		
			org.codehaus.jackson
			jackson-core-lgpl
			1.9.6
		
		
			org.codehaus.jackson
			jackson-core-asl
			1.9.4
		
		
			org.codehaus.jackson
			jackson-mapper-asl
			1.9.5
		
		
			org.codehaus.jackson
			jackson-mapper-lgpl
			1.9.6
		

		

		
		
		
			org.springframework
			spring-jdbc
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-tx
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-orm
			4.3.3.RELEASE
		
		
		
			org.springframework
			spring-jms
			4.3.3.RELEASE
		
		
		
			org.codehaus.jackson
			jackson-mapper-asl
			1.9.13
		
		

		
		
			org.mybatis
			mybatis
			3.4.1
		
		
			org.mybatis
			mybatis-spring
			1.3.0
		
		
			mysql
			mysql-connector-java
			5.1.21
		
		
			c3p0
			c3p0
			0.9.1.2
			jar
		

		
		
			org.slf4j
			slf4j-api
			1.7.22
		
		
			org.slf4j
			slf4j-log4j12
			1.7.22
		
		
			log4j
			log4j
			1.2.17
		
		
			jstl
			jstl
			1.2
		

		
		

		
			javax.servlet
			servlet-api
			2.5
			provided
		
		
			javax.servlet
			jsp-api
			2.0
			provided
		

	
	

		ssm_demo

		
			
				src/main/resources
				
					**/*.properties
					**/*.xml
					**/*.tld
				
				false
			
			
				src/main/java
				
					**/*.properties
					**/*.xml
					**/*.tld
				
				false
			
		

		
			
				org.apache.maven.plugins
				maven-compiler-plugin
				3.1
				
					1.8
					1.8
					UTF-8
					true
					true
					true
				
			

			
				org.apache.maven.plugins
				maven-surefire-plugin
				2.4.3
				
					true
				
			

		
	

3、开始配置mybatis

在src/main/resources下面新建文件夹mybatis,以及mybatis的xml配置文件:mybatis-config.xml

 




	
	
		
		
		
		
		
		
		
		
		
		
		
		
		  
		
		
		
		
		
		
        
        
        
	

4、配置spring相关

在src/main/resources下面新建文件夹spring

   ①、新建文件名:applicationContext.xml

 




	
	
	
		
	
	
	
	
		
		
		
		
		
		
		
		
		
		
		
		
		
		
	

   ②、新建文件名

applicationContext-mybatis.xml

 




	
	
		
		
		
		
  		  
  		
  		
	
	
	
	
	
	
		
		
	


    ③、新建文件名:applicationContext-transaction.xml


	
	
	
		
	

	
	
		
			
			
			
			
		
	

	
		
		
		
		
	
	

5、下面开始配置springmvc相关的

  在src/main/resources/ spring文件夹下新建:SpringMVC.xml

 




	
	
	
	
	
		
		
	

	
	
	
		
		
	

6、配置日志

 

##root logger , local level: debug, output: stdout ##
## root logger: better performance than others   ##
log4j.rootLogger=info,stdout

log4j.appender.F=org.apache.log4j.DailyRollingFileAppender
log4j.appender.F.DatePattern='.'yyyy-MM-dd
log4j.appender.F.File=logs/ssm_demo.log
log4j.appender.F.layout=org.apache.log4j.PatternLayout
log4j.appender.F.layout.ConversionPattern=[%d{ISO8601}|%t|%-5p|%C] - %m%n
log4j.appender.F.encoding=UTF-8

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d{HH:mm:ss}|%-5p|%c] - %m%n
#show application DEBUG log
log4j.logger.com.asecs = DEBUG,F
#show ibatis DEBUG log
log4j.logger.com.ibatis = DEBUG  
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource = DEBUG  
log4j.logger.com.ibatis.common.jdbc.ScriptRunner = DEBUG  
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = DEBUG  
log4j.logger.java.sql.Connection = DEBUG  
log4j.logger.java.sql.Statement = DEBUG  
log4j.logger.java.sql.PreparedStatement = DEBUG
log4j.logger.java.sql.ResultSet = DEBUG 

7、配置web.xml

 



	my

	
	
		contextConfigLocation
		classpath:spring/applicationContext*.xml
	
	
	
	  
	  
	    org.springframework.web.util.IntrospectorCleanupListener  
	 
	
	
	
		org.springframework.web.context.ContextLoaderListener
	

	
	
		SpringMVC
		org.springframework.web.servlet.DispatcherServlet
		
			contextConfigLocation
			classpath:spring/SpringMVC.xml
		
		1

	
	
	
		SpringMVC
		*.action
	
	
	  
		    字符集过滤器  
		    encodingFilter  
		    org.springframework.web.filter.CharacterEncodingFilter  
			      
			        字符集编码  
			        encoding  
			        UTF-8  
			      
	  
	  
	    encodingFilter  
	    /*  
	 
	
	
	
		  
		  
		    60  
		  
		  
		  
		  
		    index.jsp  
		  

8、新建表t_user

 

CREATE TABLE `t_user` (
  `username` varchar(255) NOT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

9、新建实体类User

 

package com.entity;

public class User {
	private String username;  
    private String password;
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}

}

10、新建mybatis mapper配置文件UserMapper.xml

 

  
  
  
      
          
          
      
    
    username, password  
    
    
 

11、创建service接口

 

package com.service;

import org.springframework.stereotype.Service;

import com.entity.User;

@Service
public interface UserService {
	boolean doUserLogin(User user);  

}

12、创建service实现类

 

package com.service;

import java.util.List;

import javax.annotation.Resource;
import javax.annotation.Resources;

import org.springframework.stereotype.Service;

import com.dao.UserDao;
import com.entity.User;

@Service
public class UserServiceImpl implements UserService {
	
	 @Resource
	private UserDao userDao; 

	public boolean doUserLogin(User user) {
		List list = userDao.selectId(user.getUsername());  
        if(list.size() == 0){  
            return false;  
        }else{  
            if(list.get(0).getPassword().equals(user.getPassword())){                 
                return true;  
            }else{  
                return false;  
            }             
        }  
	}

}

13、创建UserDao接口

 

package com.dao;

import java.util.List;

import org.springframework.stereotype.Repository;

import com.entity.User;

@Repository
public interface UserDao{  
    List selectId(String username);  
}  


14、创建controller

 

package com.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.entity.User;
import com.service.UserService;

@Controller
@RequestMapping("/test")
/*@ResponseBody */ 
public class LoginController {
	 @Autowired  
	 private UserService userService; //基于接口的,用接口接收
	   
	   @RequestMapping("/login.action") //url  
	   public String dologin(User user, Model model){  
	       if(userService.doUserLogin(user)){ 
	    	   System.out.println(user);	    	   
	           model.addAttribute("successMsg", "登陆成功!");//返回到页面所夹带的参数  
	           model.addAttribute("name", user.getUsername());  
	           return "/success";//返回的页面  
	       }else{  
	           model.addAttribute("failMsg", "用户不存在或密码错误!");  
	           return "/fail";  
	       }     
	   }  
	   
	   

}

至此配置完成,还有前端页面代码没有贴出来,大家需要的话到这里下载:https://gitee.com/redpigstu/ssm_demo_xml
 

 

 

你可能感兴趣的:(ssm,spring,mybatis)