博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个简单的ssm项目
阅读量:5226 次
发布时间:2019-06-14

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

 

准备说明

jdk、tomcat、idea、mave配置请看我前两篇,这里说下mysql以及我的mysql图像化工具

 

数据库

 

项目概览

 

 

 

 

项目构建

--------搭建一个简单的mave的web项目,构建步骤如下--------
http://www.cnblogs.com/flyins/p/7617078.html

 

--------配置文件--------

该项目需要以来的jar和plugins如下,也就是pom.xml。maven下载完成后,你可以点击Maven Projects中看到

4.0.0
com.dsh
Demo
war
1.0-SNAPSHOT
Demo Maven Webapp
http://maven.apache.org
4.12
4.1.3.RELEASE
3.2.8
1.2.2
1.2.15
5.1.32
1.6.4
2.4.2
1.0.9
4.3.5
1.2
2.5
2.0
2.5
3.3.2
1.3.2
3.3
3.4.2-fix
0.9.1
1.3.1
2.7.2
4.10.3
junit
junit
3.8.1
test
com.fasterxml.jackson.core
jackson-databind
${jackson.version}
junit
junit
${junit.version}
test
org.slf4j
slf4j-log4j12
${slf4j.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
${mybatis.spring.version}
com.github.miemiedev
mybatis-paginator
${mybatis.paginator.version}
mysql
mysql-connector-java
${mysql.version}
commons-dbcp
commons-dbcp
1.4
org.springframework
spring-context
${spring.version}
org.springframework
spring-beans
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-aspects
${spring.version}
jstl
jstl
${jstl.version}
javax.servlet
servlet-api
${servlet-api.version}
provided
javax.servlet
jsp-api
${jsp-api.version}
provided
Demo
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.2
true
true
src/main/java
**/*.properties
**/*.xml
false
View Code

resources下,粘贴下如下配置文件

spring配置文件applicationContext.xml。主要是用于ioc式创建对象和aop式管理事务。
这里主要是用到了提供数据源对象

View Code

 

mybatis配置文件mybatis-config.xml

仅仅只有几行配置,因为项目中使用的 sping和mybatis 实现的,那么其他的配置是否就由spring完成了
仔细想一下就知道结果了,使用spring当然会用到的就是spring配置数据源datasource了。那么mybatis-config.xml内容减少那也是正常了。

View Code

 

Log4j,配置文件log4j.properties

通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等

# Direct log messages to consolelog4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j.appender.console.Target=System.outlog4j.appender.console.layout=org.apache.log4j.PatternLayoutlog4j.appender.console.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n # Root logger optionlog4j.rootLogger=debug,console
View Code

 

配置web.xml,springmvc的配置文件dispatcher-servlet.xml

dispatcher-servlet.xml

View Code

web.xml

contextConfigLocation
classpath:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
dispatcher
org.springframework.web.servlet.DispatcherServlet
1
dispatcher
/
CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
utf-8
CharacterEncodingFilter
/*
index.html
View Code

 

 

---------使用mybatis.generator逆向工程生成model和dao层--------
配置文件generatorConfig.xml
注意的是:先新建一个在src下java目录,然后转成sources类型,不然不会被编译,方法参考http://www.cnblogs.com/flyins/p/7617835.html

View Code

 

 

---------给项目配置服务器--------
idea要求若给项目添加tomcat,则必须先配置好默认的tomcat,然后点击+号才有tomcat选项,所以先配置全局default的tomcat

然后再给项目配置tomcat服务器

 

 

 

 

 

------------------------------------------------------------------------------以上,准备工作结束,项目搭建完毕,准备自己coding吧----------------------------------------------------------------------------------------------

我要点击按钮,获取所有的student。
Dao层
那么我需要在mapper的xml和java文件中新增此方法:
StudentMapper.xml

StudentMapper.java

List
selectAllSudent();

 

service层

接口StudentService

package com.isd.service;import com.isd.model.Student;import java.util.List;public interface StudentService {    List
getAllStudent();}

实现StudentServiceImp

package com.isd.service.imp;import com.isd.dao.StudentMapper;import com.isd.model.Student;import com.isd.service.StudentService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import java.util.List;@Servicepublic class StudentServiceImp implements StudentService {    @Autowired    private StudentMapper studentDao;    public List
getAllStudent() { return studentDao.selectAllSudent(); }}

 

 conttroller层

StudentController

package com.isd.controller;import com.isd.model.Student;import com.isd.service.StudentService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;@Controller@RequestMapping("student")public class StudentController {    @Autowired    private StudentService studentService;    @RequestMapping("getAllStudent")    @ResponseBody    public Map
getAllStudent(){ List
allStudent=studentService.getAllStudent(); Map
result=new HashMap
(); result.put("status","sucess"); result.put("data",allStudent); return result; }}

 

 

 web

index.html

    
Title

测试系统已经启动!!!

 

效果

 

 

 

 

总的大概来说呢
spring就是用来提供对象的,利用其ioc/di与aop贯穿于整个项目。为各个层之间提供对象创建和注入,解耦合。
比如我的这个项目提供了dao层的对象。不过service、controller都有,只不过是用来注解,在默认配置文件applicationContext.xml中感觉不出来而已
springMVC是负责controller和jsp的,也就是视图层的,其默认配置文件是dispatcher-servlet.xml
mybatis是负责数据库的连接(不用jdbc了),与spring整合后,配合spring可提供dao层对象

 

项目地址

https://gitee.com/dingshao/Demo.git

转载于:https://www.cnblogs.com/dshvv/p/9645993.html

你可能感兴趣的文章
201571030319 四则运算
查看>>
RestTemplate 调用本地服务 connection refused
查看>>
.NET方向高级开发人员面试时应该事先考虑的问题
查看>>
台达PLC modbus 不支持04功能码
查看>>
发布一个JavaScript工具类库jutil,欢迎使用,欢迎补充,欢迎挑错!
查看>>
discuz 常用脚本格式化数据
查看>>
洛谷P2777
查看>>
PHPStorm2017设置字体与设置浏览器访问
查看>>
SQL查询总结 - wanglei
查看>>
安装cocoa pods时出现Operation not permitted - /usr/bin/xcodeproj的问题
查看>>
makefile中使用变量
查看>>
GIT笔记:将项目发布到码云
查看>>
JavaScript:学习笔记(7)——VAR、LET、CONST三种变量声明的区别
查看>>
JavaScript 鸭子模型
查看>>
SQL Server 如何查询表定义的列和索引信息
查看>>
GCD 之线程死锁
查看>>
NoSQL数据库常见分类
查看>>
一题多解 之 Bat
查看>>
Java 内部类
查看>>
{面试题7: 使用两个队列实现一个栈}
查看>>