记springboot+mybatis+freemarker+bootstrap的使用(2)
二、springboot+mybatis的使用
1.springboot的注解:@SpringBootApplication :启动项目:整合常用注解(@Configuration,@EnableAutoConfiguration,@ComponentScan)/扫包作用(只能在当前同级包下)
@EnableAutoConfiguration自动配置
@ComponentScan扫描一些组件如controller、service 可以扫多个包。扫多个包用法@ComponentScan(basePackages={"com.zty.controller","com.zty.service"})
@EntityScan扫描实体类的包
@MapperScan扫描Mapper类的包
@Controller 表明这是一个controller组件
@Service表明这是一个service组件
@Mapper表明这是一个Mybatis中的Mapper组件
@Autowired自动加载
@RequestMapping指定路由,负责URL到Controller中的具体函数的映射 参数有value method(可选)例:@RequestMapping(value="/login",method=RequestMethod.POST)
@Responsebody返回的字符串解析为Json格式
@RestController为rest风格的注解其中包含了@Responsebody
以上有想到的常用注解,更多注解请参考springboot官网
2.springboot项目结构
App包下是java的启动程序其中为项目启动的main方法,其中@EntityScan(basePackages={"com.zty.entity"})可以省略不要因为在@ComponentScan中已经包含了,代码如下
1 @ComponentScan(basePackages={"com.zty.controller","com.zty.service"}) 2 @EntityScan(basePackages={"com.zty.entity"}) 3 @MapperScan(basePackages={"com.zty.mapper"}) 4 @EnableAutoConfiguration 5 @SpringBootApplication 6 public class App { 7 8 public static void main(String[] args) { 9 SpringApplication.run(App.class, args); 10 } 11 }
controller代码示例如下
1 @Controller 2 public class LoginController { 3 @RequestMapping("/")//设置访问路径为域名根目录下 4 public String defaultView() { 5 return "login";//返回视图中的login.ftl模板 6 } 7 }
entity包为项目中的实体类,在这里省略
mapper包为mybatis中的mapper类,这里采用的是注解方式,代码示例如下(注意,实体类中的属性名要与数据库中的一致,不然mybatis不能自动注入)
1 @Mapper 2 public interface LoginMapper { 3 @Select("select id,name,password,depart,permission from user where name = #{name}") 4 User findUserByName(@Param("name") String name); 5 }
service代码示例如下
1 import com.zty.entity.User; 2 3 public interface LoginService { 4 User findUserByName(String name); 5 }
serviceimpl为service的具体实现,代码示例如下
1 @Service 2 public class LoginServiceImpl implements LoginService{ 3 @Autowired 4 private LoginMapper loginmapper; 5 @Override 6 public User findUserByName(String name) { 7 // TODO Auto-generated method stub 8 return loginmapper.findUserByName(name); 9 } 10 11 }
至此简单的一个项目后端已经完成,这里说一下静态资源的存放目录,springboot会自动在这几个目录下寻找资源
src/main/resources/static中存放的是图片或js、css、html之类的静态资源
src/main/resources/templates’中存放的是项目的模板文件(我用的模板是freemarker)
src/main/resources/static/webjars这是一个空目录,通过这个空目录可以访问bootstrap的资源(建空目录命名为webjars的原因可能是因为bootstrap的jar包名称为webjars吧)
来自本萌新的笔记,如果有误望各位大佬指正 :-p
推荐阅读
-
Sublime text 2/3 中 Package Control 的安装与使用方法,sublimepackage
-
使用RMAN的DUPLICATE克隆Oracle 10g R2数据库的输出
-
php实现的程序员使用的web简易采集器V2版
-
Python标准库urllib2的一些使用细节总结
-
2种在vue项目中使用百度地图的简单方法
-
下拉框、下拉控件Select2的使用
-
Yii2使用自带的UploadedFile实现的文件上传,yii2uploadedfile
-
Cocos2d-x中3D相机的使用
-
yii2组件之多图上传插件FileInput的详细使用,yii2fileinput
-
Yii2使用swiftmailer发送邮件的方法,yii2swiftmailer