springboot搭建的ssm项目

1、项目架构
这里写图片描述
2、application

@SpringBootApplication
@EnableTransactionManagement//开启事务管理
public class Application {
    public static void main(String[] args) {
         SpringApplication.run(Application.class, args);
    }
}

3、controller

  跳转页面的controller
@Controller
public class Login {
    @RequestMapping("/goto/toregist")
    public String toRegist(){
        return "regist";
    }

    @RequestMapping("/")
    public String index(){
        return "index";
    }
}
 返回json的controller
//证明是controller层并且返回json
@RestController
@EnableAutoConfiguration
@RequestMapping(value="user")
@ComponentScan(basePackages={"com.asppro.zhou.service"})//添加的注解
public class UserQueryController {
  //依赖注入
  @Autowired
  UserService userService;

  /**
   * @RestController代表这个类是用Restful风格来访问的,如果是普通的WEB页面访问跳转时,我们通常会使用@Controller
      value = "/users/{username}" 代表访问的URL是"http://host:PORT/users/实际的用户名"
          method = RequestMethod.GET 代表这个HTTP请求必须是以GET方式访问
      consumes="application/json" 代表数据传输格式是json
      @PathVariable将某个动态参数放到URL请求路径中
      @RequestParam指定了请求参数名称
   */
  @RequestMapping(value = "queryU/{username}",method = RequestMethod.GET)
  public  List<User> queryProduct(@PathVariable String username,HttpServletResponse httpServletResponse) {
      List<User> ulist = userService.queryUserByUserName(username);
      return ulist;
  }
}

4、dao层

@Mapper //声明是一个Mapper,与springbootApplication中的@MapperScan二选一写上即可
@Repository
public interface UserQueryAll {
    /**
     * 根据姓名查询数据
     * @param username
     * @return 实体数据
     */
    @Select("SELECT * FROM user WHERE username = #{username}")
    @ResultType(User.class)
    List<User> selectUser(String username);
}

5、domain层

public class User {
    private Integer id;
    private String username;
    private String password;

    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;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

       @Override
        public String toString() {
            return "User{" +
                    "id=" + id +
                    ", username='" + username + '\'' +
                    ", password=" + password +
                    '}';
        }
}

6、service层

@Service
public class UserServiceImpl implements UserService{
     @Autowired
     UserQueryAll mapper;

    @Override
    public List<User> queryUserByUserName(String username) {
        List<User> list = mapper.selectUser(username);
        return list;
    }   
}

7、application的配置

#数据库连接
spring.datasource.url=jdbc:mysql://localhost:3306/zhou
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.jpa.database = mysql
#日志配置
logging.level.org.springframework=DEBUG
spring.output.ansi.enabled=DETECT
logging.path=E:\warehouse
logging.pattern.console=%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger- %msg%n
logging.pattern.file=%d{yyyy/MM/dd-HH:mm} [%thread] %-5level %logger- %msg%n
#tomcat配置
server.port=8080
server.context-path=/springboot
spring.resources.static-locations=classpath:/templates/
#server.servlet-path=/springboot
#mybatis配置
mybatis.type-aliases-package=com.asppro.zhou.domain
#Mybatis\u626B\u63CF(\u914D\u7F6Exml\u6A21\u5F0F\u4F7F\u7528)
mybatis.mapper-locations=classpath*:mapper/*.xml
#配置跳转页面
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML5
#热部署
spring.thymeleaf.cache=false

8、pom文件

<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.asppro</groupId>
  <artifactId>springboot</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>

  <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.4.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>
        <!--前端的thymeleaf框架  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!--新增所需依赖 -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>

        <!-- servlet依赖. -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>

        <!-- spring boot devtools 依赖包.热部署 -->  
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-devtools</artifactId>  
            <optional>true</optional>  
            <scope>true</scope>  
        </dependency> 
    </dependencies>

    <build>
    <!--进行debug模式调试时配置  -->
          <plugins>
            <!-- 1、使用parent,打包: mvn package-->
            <!-- 2、使用依赖,打包: mvn package spring-boot:repackage -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--允许linux上注册服务-->
                <configuration>
                    <strong><jvmArguments>
                        -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
                    </jvmArguments></strong>
                    <executable>true</executable>
                    <fork>true</fork>  
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

猜你喜欢

转载自blog.csdn.net/qq_36323075/article/details/80593014