博客
关于我
IDEA下java的SSM框架搭建
阅读量:622 次
发布时间:2019-03-13

本文共 11738 字,大约阅读时间需要 39 分钟。

idea2017.2.6

jdk1.9

tomcat9

mysql绿色版

SSM也就是Springmvc+Spring+Mybatis,这也是现在主流的框架,在Idea环境搭建:

整体项目框架图

1、pow.xml文件

4.0.0
com.htt
htt
war
1.0-SNAPSHOT
htt Maven Webapp
http://maven.apache.org
4.0.2.RELEASE
3.2.6
1.7.7
1.2.17
0.9.5-pre8
junit
junit
3.8.1
test
javax
javaee-api
7.0
com.mchange
c3p0
0.9.5-pre8
com.mchange
mchange-commons-java
0.2.12
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
cn.jpush.api
jpush-client
3.3.3
cn.jpush.api
jiguang-common
1.0.8
io.netty
netty-all
4.1.6.Final
compile
com.google.code.gson
gson
2.3
org.slf4j
slf4j-api
1.7.7
org.slf4j
slf4j-log4j12
1.7.7
log4j
log4j
1.2.17
commons-codec
commons-codec
1.9
htt

2、jdbc.property文件

jdbc.driver=com.mysql.jdbc.Driver#数据库地址jdbc.url=jdbc:mysql://localhost:3306/ChatRobot?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false#用户名jdbc.username=root#密码jdbc.password=mysql#最大连接数c3p0.maxPoolSize=30#最小连接数c3p0.minPoolSize=10#关闭连接后不自动commitc3p0.autoCommitOnClose=false#获取连接超时时间c3p0.checkoutTimeout=10000#当获取连接失败重试次数c3p0.acquireRetryAttempts=2

3、log4j.property文件

#定义LOG输出级别log4j.rootLogger=INFO,Console,File#定义日志输出目的地为控制台log4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.Target=System.out#可以灵活地指定日志输出格式,下面一行是指定具体的格式log4j.appender.Console.layout = org.apache.log4j.PatternLayoutlog4j.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 = ALLlog4j.appender.File.layout = org.apache.log4j.PatternLayoutlog4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n

4、spring-mvc.xml

5、spring-mybatis

6、web.xml

ChatRobot
ChatRobot_Alpha_0.0.1
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
encodingFilter
/*
SpringMVC
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:spring-*.xml
1
true
SpringMVC
/
index.html

7、mapper文件的写法

insert into user(username, password, HeadImage) values (#{username,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR},#{HeadImage,jdbcType=VARCHAR})

8、dao包的写法

package com.chatRobot.dao;import com.chatRobot.model.User;import java.util.List;public interface IUserDao {    User selectUser(long id);    User getUser( String username);    List
findAllUser(); int insertUser(User user);}

9、service包写法

package com.chatRobot.service;import com.chatRobot.model.TicketNumber;import com.chatRobot.model.User;import java.util.List;public interface IUserService {    public User selectUser(long userId);    public List
findAllUser(); public int insertUser(User user); public User getUser( String username);}

10、service接口的实现类IMPLService

package com.chatRobot.service.impl;import com.chatRobot.dao.IUserDao;import com.chatRobot.model.User;import com.chatRobot.service.IUserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import javax.annotation.Resource;import java.util.List;@Service("userService")public class UserServiceImpl implements IUserService {    @Autowired    private IUserDao userDao;    public User selectUser(long userId) {        return this.userDao.selectUser(userId);    }    public List
findAllUser() { return this.userDao.findAllUser(); } public int insertUser(User user) { return this.userDao.insertUser(user); } public User getUser(String username) { return this.userDao.getUser(username); }}

11、cotroller包的写法

package com.chatRobot.cotroller;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import com.alibaba.fastjson.JSONObject;import com.chatRobot.Uitils.ExceptionProject;import com.chatRobot.model.User;import com.chatRobot.service.IUserService;import org.apache.commons.fileupload.FileItem;import org.apache.commons.fileupload.disk.DiskFileItemFactory;import org.apache.commons.fileupload.servlet.ServletFileUpload;import org.codehaus.jackson.map.ObjectMapper;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;import javax.servlet.http.HttpServletResponse;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.List;@Controller@RequestMapping("/user")public class UserController {    @Resource(name="userService")    private IUserService userService;    //登录接口    @RequestMapping("/LoginUser")    public @ResponseBody JSONObject LoginUser(HttpServletRequest request, HttpServletResponse response) throws IOException {                JSONObject results=new JSONObject();                String UserName=request.getParameter("username");                String password=request.getParameter("password");                User oldUsername=userService.getUser(UserName);                if( UserName!=null && oldUsername.getUsername().equals(UserName) ){                    results.put("message", ExceptionProject.successLogin);                    results.put("code",200);                    results.put("data",null);                    return results;                }else{                    results.put("message",ExceptionProject.faileLogin);                    results.put("code",200);                    results.put("data",null);                    return results;                }    }}
这样一个简单SSM框架就搭建完毕,dao写接口提供mabatis数据持久,service写接口-implservice去实现,,cotroller实现request的请求和response的响应返回。

你可能感兴趣的文章
MyS中的IF
查看>>
M_Map工具箱简介及地理图形绘制
查看>>
m_Orchestrate learning system---二十二、html代码如何变的容易
查看>>
M×N 形状 numpy.ndarray 的滑动窗口
查看>>
m个苹果放入n个盘子问题
查看>>
n = 3 , while n , continue
查看>>
n 叉树后序遍历转换为链表问题的深入探讨
查看>>
N!
查看>>
N-Gram的基本原理
查看>>
n1 c语言程序,全国青少年软件编程等级考试C语言经典程序题10道七
查看>>
Nacos Client常用配置
查看>>
nacos config
查看>>
Nacos Config--服务配置
查看>>
Nacos Derby 远程命令执行漏洞(QVD-2024-26473)
查看>>
Nacos 与 Eureka、Zookeeper 和 Consul 等其他注册中心的区别
查看>>
Nacos 单机集群搭建及常用生产环境配置 | Spring Cloud 3
查看>>
Nacos 启动报错[db-load-error]load jdbc.properties error
查看>>
Nacos 报Statement cancelled due to timeout or client request
查看>>
Nacos 注册服务源码分析
查看>>
Nacos 融合 Spring Cloud,成为注册配置中心
查看>>