1. 程式人生 > >spring進階 第一節 : spring boot 系列之ssm專案實戰

spring進階 第一節 : spring boot 系列之ssm專案實戰

spring進階

第一節 : spring boot 系列之ssm專案實戰

1.spring boot 介紹

 特點
    -  建立獨立的spring容器應用程式
    -  內嵌容器(tomcat,jetty,undertow)無需war部署
    -  自動配置spring配置
    -  簡化maven配置
    -  開箱即用,無需配置xml

2.idea建立springboot web 專案

2.1.1 spring boot 如何實現一個spring MVC

2.1.2 Idea 建立spring boot專案:

- spring Initializr
- web -->web:spring boot SNAPSHOT

2.1.3第一個例子:

- 建立controller(引入 @RestController)
- 編寫方法(@RequestMapping ,@GetMappings,@PostMapping)
- 介紹 application.properties中修改port,context-path以及banner.location的方法。
    @RestController
    /**
     * @Controller
     * 使用@RestController可以在方法中省略@Response的編寫,因其s內部使用@Controller和@Reposence註解
     */
public class IndexController { // @RequestMapping(value = {"/index", "/show"}, method = RequestMethod.GET) @GetMapping("index") public Map<String, String> index() { Map<String, String> map = new HashMap<String, String>(); map.put("悟空"
, "是隻猴子"); map.put("魯班", "是個英雄"); return map; } // @RequestMapping(value = {"/index2","/show2"},method = RequestMethod.POST) // @ResponseBody @PostMapping("/index2") public Map<String, String> index2() { Map<String, String> map = new HashMap<String, String>(); map.put("悟空", "是隻猴子"); map.put("魯班", "是個英雄"); return map; } }

3.mybatis

3.1 springboot 如何實現mybaatis

    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.46</version>
     </dependency>   

3.2 idea View DataBase 視窗連線mysql

3.3 建立pojo/JavaBean/Po [User.java]

3.4 建立dao層 UserMapping.java(Interface)

    @Mapper
    public interface UserMapping {
        @Select("select * from user where username= #{name}")
        public List<User> getUserByUsesrName(String name);
    }

3.5 service層 UserService 並 implements dao介面方法

    @Service
    public class UserService implements UserMapping {
        @Autowired
        UserMapping userMapping;

        @Override
        public List<User> getUserByUsesrName(String name) {
            return userMapping.getUserByUsesrName(name);
        }
    }

3.6 編寫controller層

    /**
     *  @Controller 使用 @RestController 可以在方法中省略 @Response的編寫,
           因其內部使用 @Controller @Reposence註解
     */
    @RestController
    public class IndexController {

        @Autowired
        UserService userService;

        @GetMapping("/getuser")
        public List<User> getUserByUsesrName(String name) {
            return userService.getUserByUsesrName("lijwen");
        }
    }

3.7 配置datasource

    spring.datasource.url=jdbc:mysql://localhost/test
    spring.datasource.username=dbuser
    spring.datasource.password=dbpass
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver

3.8 編寫controller

// @SpringBootApplication
@EnableAutoConfiguration
// 掃描controller 和 javabean
@ComponentScan(basePackages ={"com.springboot.demo.controller","com.springboot.demo.service"}) 
// 掃描dao
@MapperScan(basePackages = "com.springboot.demo.dao") 
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}