前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【程序源代码】《Spring Boot 开发笔记》简单搭建

【程序源代码】《Spring Boot 开发笔记》简单搭建

作者头像
程序源代码
发布2020-04-07 15:37:21
2690
发布2020-04-07 15:37:21
举报
文章被收录于专栏:程序源代码程序源代码

各位亲爱的小伙伴:大家好!

《Spring Boot 开发笔记》系列文章

这套笔记和源码是我自己在学习springboot开发中实际一个字一个字敲出来的。因为这套开发笔记是逐步整理出来的,每期会介绍不同的技术开发点。所以请大家关注公众号,以便了解更多关于Spring Boot开发知识点。

《Spring Boot开发笔记》系统搭建

章节节内容

系统搭建

1、资源目录结构说明

代码语言:javascript
复制
//一般默认保存css、img、js 这三种静态资源
"classpath:/META-INF/resourcess/static"

//一般默认保存html 这类页面资源
"classpath:/META-INF/resourcess/templates"

//一般保存数据连接properties配置文件
"classpath:/META-INF/resourcess"

2、源码目录结构说明

代码语言:javascript
复制
//启动类
springbootStartApplication
    
//controller 代表控制层,主要是Action/Servlet等构成(Spring MVC则是通过@Controller标签使用)此层业务层与视图层打交道的中间层,负责传输VO对象和调用BO层的业务方法,负责视图层请求的数据处理后响应给视图层。
com.itcode.controller.xxx
    
//pojo(plian ordinary java object)
//代表简单无规则java对象.纯的传统意义的java对象,最基本的Java Bean只有属性加上属性的get和set方法;可以额转化为PO、DTO、VO;比如POJO在传输过程中就是DTO
com.itcode.pojo
    
//entitiy 简单的java对象。类似于pojo最基本的Java Bean只有属性加上属性的get和set方法
com.itcode.entitiy
    
//Dao 操作数据库类存放目录
com.itcode.Dao

3、创建文件时注意的几个问题

3.1 静态资源文件html,应该存放到templates 文件夹下面,才能被加载

3.2创建Dao,可以使用Map模拟数据库,往对象中保存对应的键值对内容。

3.3 默认访问首页时注意,在public/index.html也有首页的话,就加载不到。

4、编写类文件

4.1 实体类

代码语言:javascript
复制
package com.itcode.entitiy;

//部门-实体类
public class Department {

    private String id;//部门ID,一般是uuid
    private String deptname;//部门名称

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getDeptname() {
        return deptname;
    }

    public void setDeptname(String deptname) {
        this.deptname = deptname;
    }
}
代码语言:javascript
复制
package com.itcode.entitiy;

//员工-实体类
public class employee {
    private String id;//员工ID,一般是uuid
    private String name;//员工名称
    private Integer age;//员工年龄

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}

DAO类

代码语言:javascript
复制
package com.itcode.Dao;

import com.itcode.entitiy.Department;
import org.springframework.stereotype.Repository;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

@Repository
public class DepartmentDao {
    private static Map<Integer, Department> departmentS = null;

    static {
        //创建部门1对象
        Department a = new Department();
        a.setId("1");
        a.setDeptname("部门1");
        //创建部门2对象
        Department b = new Department();
        b.setId("2");
        b.setDeptname("部门2");

        departmentS = new HashMap<Integer, Department>();
        departmentS.put(1, a);
        departmentS.put(2, b);

    }
    //获取部门列表
    public Collection<Department>  getDepartments(){
        return  departmentS.values();
    }
    //根据部门ID获取部门
    public Department getDepartmentByid(Integer id){
        return departmentS.get(id);
    }

}
代码语言:javascript
复制
package com.itcode.Dao;

import com.itcode.entitiy.Employee;
import org.springframework.stereotype.Repository;

import java.util.Collection;
import java.util.Map;
@Repository
public class EmployeeDao {

    public static Map<Integer, Employee> employeeMap = null;

    static {
        Employee a = new Employee();
        a.setId("1");
        a.setName("程序源代码");
        a.setAge(10);

        Employee b = new Employee();
        b.setId("2");
        b.setName("itcode");
        b.setAge(10);

        employeeMap.put(1,a);
        employeeMap.put(2,b);

    }
    //部门列表
    public Collection<Employee> getEmployeeS(){
        return  employeeMap.values();
    }
    //根据部门ID获取部门
    public Employee getEmplyees(Integer id){
        return employeeMap.get(id);
    }

}
7、修改对应的资源文件

首页配置时注意所有页面的静态资源都需要使用teymeleaf这个标签来进行修改,也可以说用它来接管资源文件修改。不然的话不能加载对应的资源信息

写法: th: @{}

Thymeleaf默认会开启页面缓存,提高页面并发能力。但会导致我们修改页面不会立即被展现,因此我们关闭缓存:

代码语言:javascript
复制
# 关闭Thymeleaf的缓存
spring.thymeleaf.cache=false
代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>hello</title>
</head>
<body>
    <h1 th:text="${msg}">大家好</h1>
</body>
</html>
8、国际化

一般系统都支持国际化的,可以进行中文和英语等语言的适配。在进行编码前必须将IDEA file inconding 设置成UTF-8,不然的话就会出现乱码;

一般创建i18n这里面创建国际化配置文件。新建一个名叫“i18n”的包,我们用来存放国际化配置,然后在这个包下,我们再创建几个properties的配置文件,用来配置语言:如图方式,我们创建3个文件,分别是无语言配置时候生效的login.properties;中文生效的login_zh_CN.properties;英文生效的login_en_US.properties;也就是以下划线的组合:文件名区域语言.properties;当我们这样命名生成文件后,IDEA也会帮我们识别这是个国际化配置包,自动转换成如下的模式

9、登录功能实现

通过th:action 这个标签进行访问请求

代码语言:javascript
复制
<form class="" action="login.html" th:action="@{user/login}" method="post">
代码语言:javascript
复制
//    跳转到成功页面
    @ResponseBody
    @RequestMapping("/success")
    public String Success(Map<String ,Object> map){
        map.put("success","success");
       return "success";
    }
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序源代码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 7、修改对应的资源文件
  • 8、国际化
  • 9、登录功能实现
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档