准备说明
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式管理事务。
这里主要是用到了提供数据源对象
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
View Code
mybatis配置文件mybatis-config.xml
仅仅只有几行配置,因为项目中使用的 sping和mybatis 实现的,那么其他的配置是否就由spring完成了
仔细想一下就知道结果了,使用spring当然会用到的就是spring配置数据源datasource了。那么mybatis-config.xml内容减少那也是正常了。
/p>
"http://mybatis.org/dtd/mybatis-3-config.dtd">
View Code
Log4j,配置文件log4j.properties
通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等
# Direct log messages to console
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=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
# Root logger option
log4j.rootLogger=debug,console
View Code
配置web.xml,springmvc的配置文件dispatcher-servlet.xml
dispatcher-servlet.xml
View Code
web.xml
/p>
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
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
/p>
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
View Code
---------给项目配置服务器--------
idea要求若给项目添加tomcat,则必须先配置好默认的tomcat,然后点击+号才有tomcat选项,所以先配置全局default的tomcat
然后再给项目配置tomcat服务器
------------------------------------------------------------------------------以上,准备工作结束,项目搭建完毕,准备自己coding吧----------------------------------------------------------------------------------------------
我要点击按钮,获取所有的student。
Dao层
那么我需要在mapper的xml和java文件中新增此方法:
StudentMapper.xml
selectfrom student
StudentMapper.java
List selectAllSudent();
service层
接口StudentService
packagecom.isd.service;importcom.isd.model.Student;importjava.util.List;public interfaceStudentService {
ListgetAllStudent();
}
实现StudentServiceImp
packagecom.isd.service.imp;importcom.isd.dao.StudentMapper;importcom.isd.model.Student;importcom.isd.service.StudentService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importjava.util.List;
@Servicepublic class StudentServiceImp implementsStudentService {
@AutowiredprivateStudentMapper studentDao;public ListgetAllStudent() {returnstudentDao.selectAllSudent();
}
}
conttroller层
StudentController
packagecom.isd.controller;importcom.isd.model.Student;importcom.isd.service.StudentService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RequestMethod;importorg.springframework.web.bind.annotation.ResponseBody;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;
@Controller
@RequestMapping("student")public classStudentController {
@AutowiredprivateStudentService studentService;
@RequestMapping("getAllStudent")
@ResponseBodypublic MapgetAllStudent(){
List allStudent=studentService.getAllStudent();
Map result=new HashMap();
result.put("status","sucess");
result.put("data",allStudent);returnresult;
}
}
web
index.html
Title测试系统已经启动!!!
获取所有学生
varmyhost='http://localhost:8080/Demo/';vargetAllStudent=myhost+'student/getAllStudent';
$('button').click(function() {
$.post(getAllStudent,function(rep) {
console.log(rep)
})
})