二、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中已经包含了,代码如下

            

 @ComponentScan(basePackages={"com.zty.controller","com.zty.service"})
@EntityScan(basePackages={"com.zty.entity"})
@MapperScan(basePackages={"com.zty.mapper"})
@EnableAutoConfiguration
@SpringBootApplication
public class App { public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}

           controller代码示例如下

 @Controller
public class LoginController {
@RequestMapping("/")//设置访问路径为域名根目录下
public String defaultView() {
return "login";//返回视图中的login.ftl模板
}
}

         entity包为项目中的实体类,在这里省略

         mapper包为mybatis中的mapper类,这里采用的是注解方式,代码示例如下(注意,实体类中的属性名要与数据库中的一致,不然mybatis不能自动注入)

 @Mapper
public interface LoginMapper {
@Select("select id,name,password,depart,permission from user where name = #{name}")
User findUserByName(@Param("name") String name);
}

        service代码示例如下

 import com.zty.entity.User;

 public interface LoginService {
User findUserByName(String name);
}

        serviceimpl为service的具体实现,代码示例如下

 @Service
public class LoginServiceImpl implements LoginService{
@Autowired
private LoginMapper loginmapper;
@Override
public User findUserByName(String name) {
// TODO Auto-generated method stub
return loginmapper.findUserByName(name);
} }

      至此简单的一个项目后端已经完成,这里说一下静态资源的存放目录,springboot会自动在这几个目录下寻找资源

      src/main/resources/static中存放的是图片或js、css、html之类的静态资源

      src/main/resources/templates’中存放的是项目的模板文件(我用的模板是freemarker)

      src/main/resources/static/webjars这是一个空目录,通过这个空目录可以访问bootstrap的资源(建空目录命名为webjars的原因可能是因为bootstrap的jar包名称为webjars吧)

                            来自本萌新的笔记,如果有误望各位大佬指正 :-p

        

记springboot+mybatis+freemarker+bootstrap的使用(2)的更多相关文章

  1. 记springboot+mybatis+freemarker+bootstrap的使用(1)

    一..springboot的配置 1.安装并配置maven maven是项目管理工具,可以自动下载并管理jar包之间的依赖关系,可通过maven自动配置springboot 参照百度经验https:/ ...

  2. 在MyEclipse中搭建spring-boot+mybatis+freemarker框架

    一.创建项目 1.右键-->New-->Project... 2.选中Maven Project,点击next 3.选中第一个 4.添写Group Id,Artifact Id,选择Com ...

  3. 在MyEclipse中使用spring-boot+mybatis+freemarker实现基本的增删改查

    一.基本环境 二.创建实体类 1.User.java package bjredcross.rainbowplans.model; import bjredcross.rainbowplans.com ...

  4. SpringBoot+Mybatis+Freemark 最简单的例子

    springboot-sample 实现最简单的 SpringBoot + Mybatis + Freemarker 网页增删改查功能,适合新接触 Java 和 SpringBoot 的同学参考 代码 ...

  5. springboot+mybatis+bootstrap开发员工oa后台管理系统项目源码

    java项目源码详情描述:S020<springboot+mybatis+bootstrap开发员工oa后台管理系统项目源码>jboa项目有请假以及报销单的申请和审核session共享加登 ...

  6. 记一次springboot+mybatis+phoenix在代码集成中的坑

    场景: 希望使用phoenix做查询服务,给服务端提供接口 设计: 通过springboot做restful的接口发布,通过mybatis做phoenix的sql处理,因此是springboot+my ...

  7. Springboot+Mybatis+MySQL实例练习时踩坑记录

    最近刚开始学习后端,直接让上手学习Springboot+Mybatis+MySQL对CRUD的实例,虽然实例不难,但是上面的三个知识我都不懂,就有点为难我了 所以经常遇到一个点卡自己很久的情况,这里列 ...

  8. SpringBoot第十一篇:SpringBoot+MyBatis+Thymelaf实现CRUD

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10936304.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   总结前面几 ...

  9. springboot+mybatis+druid+atomikos框架搭建及测试

    前言 因为最近公司项目升级,需要将外网数据库的信息导入到内网数据库内.于是找了一些springboot多数据源的文章来看,同时也亲自动手实践.可是过程中也踩了不少的坑,主要原因是我看的文章大部分都是s ...

随机推荐

  1. Linux:CentOS7卸载mysql

    步骤 方法一. 1.查看mysql安装 rpm -qa|grep -i mysql 2.卸载前关闭mysql服务 rpm -ev --nodeps mysql-community-release-el ...

  2. selenium层级定位及鼠标键盘操作

    #code:utf-8 from selenium import webdriver from selenium.webdriver.common.action_chains import Actio ...

  3. Shodan搜索引擎介绍

    from:http://www.exploit-db.com/wp-content/themes/exploit/docs/33859.pdf 0x00 概要 这篇文章可以作为渗透测试人员和安全工作者 ...

  4. [零基础学JAVA]Java SE基础部分-02.标识符、数据类型

    转自:http://redking.blog.51cto.com/27212/114976 1.课程名称:标识符.数据类型 本季介绍了Java中的标识符的命名规则,各种关键字及数据类型的划分,并对各种 ...

  5. C#图解教程读书笔记(第6章 类进阶)

    类成员声明语句由下列部分组成:核心声明.一组可选的修饰符和一组可选的特性(attribute). [特性] [修饰符] 核心声明 修饰符: 如果有修饰符,必须放在核心声明之前. 如果有多个修饰符,要有 ...

  6. D3——基本知识点

    选择器: d3.select - 从当前文档中选择一个元素 d3.selectAll - 从当前文档中选择多个元素 selection.append - 创建并追加一个新元素 selection.at ...

  7. 制作炫酷雪花背景的jQuery插件

    插件使用十分简单,代码已经放至我的GitHub,大家可以下载以及使用或者更新改进代码. HTML代码源码: <!DOCTYPE html> <html> <head> ...

  8. HTML和CSS实现常见的布局

    https://segmentfault.com/a/1190000003931851#articleHeader15

  9. tmux分屏

    网上很多教程: 新手教程: tmux进入 ctrl + b 命令 % 纵向分屏 命令 方向键 切换 https://lukaszwrobel.pl/blog/tmux-tutorial-split-t ...

  10. php 统计二维数组中某个相等值的总个数,并且组合成一个新的数组 转发

    $ar = array(   array( 'sv_id' => 1, 'mid' => 1, 'sv_question1' => 20 ),   array( 'sv_id' =& ...