1.jdk的安装,参考:点击打开链接
2.Eclipse的安装,参考:点击打开链接
配置Eclipse的JDK为我们自己安装的(window——>preferences)
此时我们可以创建一个java项目,编写helloword测试是否正确。
3.tomcat的下载(官网:http://tomcat.apache.org/)和安装
4.Eclipse配置tomcat(window——>preferences)
5.maven安装(官网:http://maven.apache.org/download.cgi)和配置
在环境变量下面(系统变量)新建变量名:MAVEN_HOME 编辑变量值:E:\java\apache-maven-3.5.3
编辑变量名Path 在最前面加上:%MAVEN_HOME%\bin;(PS:最后需要一个“;”作为分隔符)
完成后在命令里面输入mvn -version,如下表示配置成功
maven数据仓库的配置:找到maven的安装路径,进入conf打开settings.xml,找到localRepository标签,此时是被注释掉的,我们解除注释,配置路径(eg:E:\java\mavenRepository\maven_jar),这样以后maven下载的包都会在这个路径下。然后copy这个settings.xml到E:\java\mavenRepository下,Eclipse集成会用到。
eclipse集成maven
此时,点击File——>New——>other——>Maven Project,看到这些表明配置成功,就可以创建maven项目了
6.SVN安装
(Artifact Id选择maven-archetype-webapp)
4.0.0
org.storm
storm
war
0.0.1-SNAPSHOT
storm Maven Webapp
http://maven.apache.org
4.0.2.RELEASE
3.2.6
1.7.7
1.2.17
junit
junit
4.11
test
org.springframework
spring-core
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-oxm
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-aop
${spring.version}
org.springframework
spring-context-support
${spring.version}
org.springframework
spring-test
${spring.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.2.2
javax
javaee-api
7.0
mysql
mysql-connector-java
5.1.30
commons-dbcp
commons-dbcp
1.2.2
jstl
jstl
1.2
log4j
log4j
${log4j.version}
com.alibaba
fastjson
1.1.41
org.slf4j
slf4j-api
${slf4j.version}
org.slf4j
slf4j-log4j12
${slf4j.version}
org.codehaus.jackson
jackson-mapper-asl
1.9.13
commons-fileupload
commons-fileupload
1.3.1
commons-io
commons-io
2.4
commons-codec
commons-codec
1.9
storm
1.创建jdbc属性文件(jdbc.properties)
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test1
#?useUnicode=true&&characterEncoding=UTF-8
username=root
password=123123
#定义初始连接数
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000
2.建立spring-mybatis.xml配置文件
3.Log4j的配置(log4j.properties)
#定义LOG输出级别
log4j.rootLogger=INFO,Console,File
#定义日志输出目的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n
#文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录
log4j.appender.File.File = logs/ssm.log
#定义文件最大大小
log4j.appender.File.MaxFileSize = 10MB
# 输出所以日志,如果换成DEBUG表示输出DEBUG以上级别日志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n
4.JUnit测试【通过以上步骤,log4j可以不配,已经完成了spring和mybatis的整合,这样我们可以编写代码测试了】
①创建测试所用表
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
`stuId` int(11) NOT NULL AUTO_INCREMENT,
`stuName` varchar(45) NOT NULL,
`stuAge` int(11) NOT NULL,
`stuCode` varchar(45) NOT NULL,
PRIMARY KEY (`stuId`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
INSERT INTO `student` VALUES (5,'Marry',11,'96'),(6,'Nancy',12,'100');
②利用MyBatis Gennerator自动创建代码,参考:点击打开链接
③建立Service接口和实现类 IStudentService.java和StudentServiceImpl.java
package com.cdc.service;
import com.cdc.entity.Student;
public interface IStudentService {
public Student getStudentById(int stuId);
}
package com.cdc.service.impl;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.cdc.entity.Student;
import com.cdc.mapper.StudentMapper;
import com.cdc.service.IStudentService;
@Service("stuService")
public class StudentServiceImpl implements IStudentService{
@Resource
private StudentMapper studentMapper;
public Student getStudentById(int stuId) {
return this.studentMapper.selectByPrimaryKey(stuId);
}
}
④建立测试类(src/test/java),下面测试类中注释掉的部分是不使用Spring时,一般情况下的测试方法;如果使用了Spring那么就可以使用注解的方式来引入配置文件和类,然后再将service接口对象注入,就可以进行测试了。
如果测试成功,表示Spring和Mybatis已经整合成功了。输出信息使用的是Log4j打印到控制台。
package org.testmybatis;
import javax.annotation.Resource;
import org.apache.log4j.Logger;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.alibaba.fastjson.JSON;
import com.cdc.entity.Student;
import com.cdc.service.IStudentService;
@RunWith(SpringJUnit4ClassRunner.class) //表示继承了SpringJUnit4ClassRunner类
@ContextConfiguration(locations = {"classpath:spring-mybatis.xml"})
public class TestMyBatis {
private static Logger logger = Logger.getLogger(TestMyBatis.class);
// private ApplicationContext ac = null;
@Resource
private IStudentService stuService = null;
// @Before
// public void before() {
// ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// userService = (IUserService) ac.getBean("userService");
// }
@Test
public void test1() {
Student student = stuService.getStudentById(10);
// System.out.println(user.getUserName());
// logger.info("值:"+user.getUserName());
logger.info(JSON.toJSONString(student));
}
}
至此,完成Spring和mybatis这两大框架的整合,下面在继续进行SpringMVC的整合。
上面已经完成了2大框架的整合,SpringMVC的配置文件单独放,然后在web.xml中配置整合。
1.配置spring-mvc.xml
text/html;charset=UTF-8
2.配置web.xml
这里面对spring-mybatis.xml的引入以及配置的spring-mvc的Servlet就是为了完成SSM整合,之前2框架整合不需要在此处进行任何配置
Archetype Created Web Application
contextConfigLocation
classpath:spring-mybatis.xml
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
true
encoding
UTF-8
encodingFilter
/*
org.springframework.web.context.ContextLoaderListener
org.springframework.web.util.IntrospectorCleanupListener
SpringMVC
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:spring-mvc.xml
1
true
SpringMVC
/
/index.jsp
3.测试(至此已整合完成,需测试是否整合成功?成功,恭喜你!else,和bug做斗争!)
①新建showStudent.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
测试
${student.stuName}
②建立StudentController.java控制器
package com.cdc.controller;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import com.cdc.entity.Student;
import com.cdc.service.IStudentService;
@Controller
@RequestMapping("/student")
public class StudentController {
@Resource
private IStudentService iStudentService;
@RequestMapping("/showStudent")
public String toIndex(HttpServletRequest request, Model model) {
int stuId = Integer.parseInt(request.getParameter("id"));
Student student = this.iStudentService.getStudentById(stuId);
model.addAttribute("student", student);
return "showStudent";
}
}
4.部署项目,输入地址:http://localhost:8080/项目名称/student/showStudent?id=10
以上是项目的目录结构,至此,SSM三大框架的整合就完成了,在此基础上可再添加其他功能。