美文网首页
springboot初探

springboot初探

作者: jieme1989 | 来源:发表于2016-04-26 17:45 被阅读1237次

1、首先到https://start.spring.io 选择springboot的版本(我这里是默认的1.3.3),选择Generate方式(我这里是默认的maven),填写Group、Artifact , 选择自己需要集成的dependencie。然后点击生成就会创建一个maven的项目。同时下载到本地。

2、打开idea 选择open刚才下载到本地的项目。

3、重要的是pom.xml,现在贴出来给大家看看。重要的贴出来。

4、可以看见这里用了两种方式实现持久层,jpa、mybatis。

首先要引入spring-boot-starter-data-jpa、mybatis-spring-boot-starter

4.1、在application.properties里添加jpa、mybatis的相关配置

# Hibernate ddl auto (create, create-drop, update)

spring.jpa.hibernate.ddl-auto=update

# Naming strategy

spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy

spring.jpa.database=MYSQL

# Show or not log for each sql query

spring.jpa.show-sql=true

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

# mybatis

mybatis.mapper-locations=classpath:mapper/*.xml

mybatis.type-aliases-package=com.XXXXXXXXXX.entity

4.2、mybatis还需要在含有@SpringBootApplication 的类里添加

@MapperScan("com.XXXXXXXX.mapper") 

这个路径下放的是mapper的interface。

4.3 jpa的持久层,写一个接口继承CrudRepository<实体对象,Long(或者其他)>这个泛型一定要加!!!

比如:public interface UserRepository extends CrudRepository<User,Long>

继承之后就会有一些可用的方法:

S save(S var1);

Iterable save(Iterable var1);

T findOne(ID var1);

booleanexists(ID var1);

Iterable findAll();

Iterable findAll(Iterable var1);

longcount();

voiddelete(ID var1);

voiddelete(T var1);

voiddelete(Iterable var1);

voiddeleteAll();

当然也可以自己写方法,但是需要添加注解 来说明方法的作用。

@Query("select u from User u where u.username=:username and u.password=:password")

User selUser(@Param("username") String username,@Param("password") String password)throwsException;

5、controller里的写法,这里和之前的springmvc注解没有很大区别,名字不太一样。

@RestController

@RequestMapping("user")

public class UserController {

@Autowired

private IUserService userService;

@RequestMapping("login")

@ResponseBody

public Object login(@RequestParam("username") String username,@RequestParam("password") String password)throwsException {

return userService.login(username,password);

}

6、下面是filter的配置

@WebFilter(filterName="commonFilter",urlPatterns="/*")

public class CommonFilter implements Filter {

@Override

public void init(FilterConfig filterConfig)throws ServletException {

logger.info("CommonFilter init()");

}

@Override

public void doFilter(ServletRequest servletRequest,ServletResponse servletResponse,FilterChain filterChain)throws IOException,ServletException {

HttpServletRequest request = (HttpServletRequest) servletRequest;

filterChain.doFilter(servletRequest,servletResponse);

}

@Override

public void destroy() {

logger.info("CommonFilter destroy()");

}

}

7、关于运行:

在有@SpringBootApplication注解的类里添加下面的方法:

public static void main(String[] args) {

SpringApplication springApplication =newSpringApplication();

springApplication.setWebEnvironment(true);

springApplication.run(Application.class,args);

}

右键运行就可以啦!看到有日志输出,没有报错就没有问题啦。不过好像项目启动就退出,用浏览器是不能访问的,找不到服务器,不知道什么原因。有知道问题的可以告知下,3Q啦!

只能用maven 命令 mvn package 打包把war放在tomcat下启动才行。再用浏览器访问是可以的!

相关文章

网友评论

      本文标题:springboot初探

      本文链接:https://www.haomeiwen.com/subject/ngoqrttx.html