通过springboot+mybatis+mysql+freemarker创建一个java web项目
2017-01-12 00:00
1211 查看
项目地址详见:
https://github.com/gholly/springboot-java-web-freemarker.git
1.File->New->Project:点击maven构建maven项目,然后点击next,
进而填写项目名称:
点击finish即可。
2.springboot初探,搭建一个基础的java web项目
pom.xml文件
创建applicationwen
Application.java文件:
controller.java文件
然后运行application.java文件,运行成功后,在浏览器上输入localhost:8080/
3.用springboot结合mybatis实现一个java web项目
pom.xml文件:
Application.java
MybatisConfig.java
Model层的User.java
Dao层的UserMapper.java
Service层的UserService.java
Service层的UserServiceImpl.java
Myatis下的UserMapper.xml文件:
controller层文件:
application.yml文件
------------------------------------------------------------------------
分割线下面是加上freeamrker后的配置:
首先要加上freemarker的依赖
其次yml配置:
其中关于freemarker的配置也可放于application.properties文件中(位于resources/目录下的application.properties和application.yml文件功能是一致的,均为项目的配置文件,可配置端口,模板引擎如freemarker,thymedef等,以及数据源,日志等,只是不同的写法而已,yml文件的格式更易观看)
controller层
前端页面(页面略丑,只实现freemarker的功能)index.html
运行结果:
此时已经完成springboot+mybatis+mysql+freemarker的基础框架的搭建!
https://github.com/gholly/springboot-java-web-freemarker.git
1.File->New->Project:点击maven构建maven项目,然后点击next,
进而填写项目名称:
点击finish即可。
2.springboot初探,搭建一个基础的java web项目
pom.xml文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.test</groupId> <artifactId>blue</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.5.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
创建applicationwen
Application.java文件:
package com.test.blue; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** * Created by guanguan on 17/1/17. */ @SpringBootApplication public class Application { public static void main(String[] args){ SpringApplication.run(Application.class,args); } }
controller.java文件
package com.test.blue; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; /** * Created by guanguan on 17/1/17. */ @Controller public class controller { @RequestMapping("/") @ResponseBody public String index(){ String index="jjj"; return index; } }
然后运行application.java文件,运行成功后,在浏览器上输入localhost:8080/
3.用springboot结合mybatis实现一个java web项目
pom.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.test</groupId> <artifactId>blue</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.5.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--mybatis--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--mysql--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--数据源--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.21</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.1.43</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>utf-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>2.0</version> </plugin> </plugins> </build> </project>
Application.java
package com.test.blue; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; /** * Created by guanguan on 17/1/17. */ @SpringBootApplication @ComponentScan("com.test.blue") public class Application extends WebMvcConfigurerAdapter { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
MybatisConfig.java
package com.test.blue.config; import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import javax.sql.DataSource; /** * Created by guanguan on 17/1/17. */ @Configuration @MapperScan("com.test.blue.dao") public class MybatisConfig { @Autowired DataSource dataSource; @Bean(name = "sqlSessionFactory") public SqlSessionFactory sqlSessionFactory() throws Exception { SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource); PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath:/mybatis/*.xml")); return sqlSessionFactoryBean.getObject(); } }
Model层的User.java
package com.test.blue.model; /** * Created by guanguan on 17/1/17. */ public class User { private Integer id; private String username; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
Dao层的UserMapper.java
package com.test.blue.dao; import com.test.blue.model.User; import java.util.HashMap; import java.util.List; /** * Created by guanguan on 17/1/17. */ public interface UserMapper { List<User> findBy(HashMap<?,?> params); }
Service层的UserService.java
package com.test.blue.service; import com.test.blue.model.User; import java.util.HashMap; import java.util.List; /** * Created by guanguan on 17/1/17. */ public interface UserService { List<User> findBy(HashMap<?,?> params); }
Service层的UserServiceImpl.java
package com.test.blue.service; import com.test.blue.dao.UserMapper; import com.test.blue.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; /** * Created by guanguan on 17/1/17. */ @Service public class UserServiceImpl implements UserService{ @Autowired UserMapper userMapper; public List<User> findBy(HashMap<?,?> params){ return userMapper.findBy(params); } }
Myatis下的UserMapper.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.test.blue.dao.UserMapper"> <resultMap type="com.test.blue.model.User" id="userResultMap"> <id property="id" column="id"/> <result property="username" column="username"/> </resultMap> <select id="findBy" resultMap="userResultMap" parameterType="HashMap"> SELECT * FROM `user`; </select> </mapper>
controller层文件:
package com.test.blue.controller; import com.alibaba.fastjson.JSON; import com.test.blue.model.User; import com.test.blue.service.UserService; 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.ResponseBody; import java.util.HashMap; import java.util.List; /** * Created by guanguan on 17/1/17. */ @Controller public class controller { @Autowired UserService userService; @RequestMapping("/hh") @ResponseBody public String hh(){ List<User> userList =userService.findBy(new HashMap<>()); return JSON.toJSONString(userList); } }
application.yml文件
server: port: 8383 spring: datasource: url: jdbc:mysql://127.0.0.1/blue?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true username: upgrade password: upgrade driverClassName: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource freemarker: suffix: .jsp logging: level.com.test.blue: debug
------------------------------------------------------------------------
分割线下面是加上freeamrker后的配置:
首先要加上freemarker的依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>
其次yml配置:
server: port: 8383 spring: datasource: url: jdbc:mysql://127.0.0.1/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true username: upgrade password: upgrade driverClassName: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource freemarker: cache: false templateEncoding: UTF-8 templateLoaderPath: classpath:/templates/ #表示所有的模板文件都在该目录下,也即是前端文件在该目录下 suffix: .html settings: locale: zh_CN date_format: yyyy-MM-dd time_format: HH:mm:ss datetime_format: yyyy-MM-dd HH:mm:ss logging: level.com.test.data: debug
其中关于freemarker的配置也可放于application.properties文件中(位于resources/目录下的application.properties和application.yml文件功能是一致的,均为项目的配置文件,可配置端口,模板引擎如freemarker,thymedef等,以及数据源,日志等,只是不同的写法而已,yml文件的格式更易观看)
spring.freemarker.suffix=.html spring.freemarker.template-loader-path=classpath:/templates/ spring.freemarker.charset=UTF-8 spring.freemarker.cache = false
controller层
package com.test.data.controller; import com.test.data.model.User; import com.test.data.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import java.util.HashMap; import java.util.List; /** * Created by guanguan on 2017/7/20. */ @Controller public class controller { @Autowired UserService userService; @RequestMapping("/") public String index(ModelMap model){ HashMap<String,Object> params= new HashMap<String, Object>(); List<User> userList= userService.findBy(params); model.addAttribute("user",userList.get(0)); return "index"; } }
前端页面(页面略丑,只实现freemarker的功能)index.html
<!DOCTYPE html> <html lang="zh-cn"> <head> <title> freemarker简单练习 </title> </head> <body> <div> <span>ID:</span> <button>${user.getId()}</button> </div> <div> <span>姓名:</span> <button>${user.getUserName()}</button> </div> </body> </html>
运行结果:
此时已经完成springboot+mybatis+mysql+freemarker的基础框架的搭建!
相关文章推荐
- java鬼混笔记:springboot 3、springboot创建web项目和打包
- 快速创建一个基于Gradle构建的SpringBoot Web项目(SpringBoot-01)
- 创建一个Spring+SpringMVC+MyBatis+MySql+Maven项目需要注意的地方
- 通过Spring Boot + Mybatis + Redis快速搭建现代化Web项目
- 分享一个本人开发的angularjs+bootstrap+Spring+mybatis实现的java web系统项目
- 通过Spring Boot三分钟创建Spring Web项目
- [转]通过Spring Boot三分钟创建Spring Web项目
- SpringMvc+MyBatis+MySQL+Maven+Redis搭建一个基础的web项目
- eclipse 中创建 整合springmvc+mybatis+maven 的java web项目步骤,以及maven仓库配置
- 使用Spring Boot +JPA+mybatis快速启动一个web项目
- 创建一个SpringBoot + springmvc + hibernateJPA + MyBatis的项目
- 通过Spring Boot三分钟创建Spring Web项目
- springboot创建一个新的项目(通过spring官方网站)
- Spring Boot . 2 -- 用Spring Boot 创建一个Java Web 应用
- SpringBoot + Thymeleaf + JPA创建一个web项目
- 【初学Mybatis】No.1 使用Maven创建一个JavaWeb3.0项目
- IDEA搭建SpringBoot+Maven+Mybatis+MySQL-Web项目流程
- 采用CXF+spring+restful创建一个web接口项目
- 基础教学——如何用maven工具创建一个springmvc+mybatis的项目