Java程序员从笨鸟到菜鸟(三十)IDEA创建spring-boot

一、IDEA创建spring-boot应用

新建spring项目

步骤一:

这里写图片描述

步骤二:

这里写图片描述

步骤三:选中web

这里写图片描述

步骤四:项目建完之后,目录结构如下:

这里写图片描述

新建项目完成之后,demo包下会有一个DemoApplication类,我们通过这个类来启动项目

这里写图片描述

启动成功界面:

这里写图片描述

二、参数配置

端口及参数配置:

在resources资源目录下会自动生成一个application.properties配置文件,tomcat默认启动端口是8080,很有可能会出现端口占用的情况,这时候需要在配置文件中配置端口号。

一般在做项目的时候会把配置文件改成application.yml,这样方便配置连接数据库,这是优化之后的目录结构及配置文件,其中User、UserRepository、UserController三个类是测试数据库连接时候使用
这里写图片描述

在配置application.yml配置文件时,需要注意以下几点,不然或报异常:

  1. 上下行缩进:不能使用tab缩进,只能用两个空格
  2. 冒号和后面的内容必须要有空格
  3. 注释不是用//,而是使用#号

配置数据库连接

对应参数配置和以前配置文件差不多,配置驱动、URL、用户名、密码

三、测试类

实体类User
@Entity
@Table(name="user")
public class User {
    @Id
    @GeneratedValue(strategy= GenerationType.AUTO)
    private int id; // 用户编号
    private String name; // 用户姓名
    private String password; // 用户密码
    private int age; // 用户年龄
    private String sex; // 用户性别

    public User() {
    }

    public User(int id, String name, String password, int age, String sex) {
        this.id = id;
        this.name = name;
        this.password = password;
        this.age = age;
        this.sex = sex;
    }

    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getPassword() {
        return password;
    }

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

    public int getAge() {
        return age;
    }

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

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", password='" + password + '\'' +
                ", age=" + age +
                ", sex='" + sex + '\'' +
                '}';
    }
}
dao层,这里使用UserRepository继承CruRepository类实现
@Repository
public interface UserRepository extends CrudRepository<User, Integer> {
    /**
     * 根据id查找用户信息
     * @param id 接收用户id
     * @return user 返回一个用户实体
     * */
    public User findUserById(int id);

    /**
     * 添加用户信息
     * @param u 接收用户输入信息
     * */
    public User save(User u);

    /**
     * 根据姓名查找用户信息
     * @param name 接收一个用户姓名
     * @return user 返回查询到的结果
     * */
    @Query("select t from User t where t.name=:name")
    public User findUserByName(@Param("name") String name);
}
控制层UserController实现
@RestController
@RequestMapping("/user")
@Qualifier("userRepository")
public class UserController {

    private final UserRepository userRepository;

    @Autowired
    public UserController(UserRepository userRepository) {
        this.userRepository = userRepository;
    }

    @RequestMapping(value = "/getUserById", method = RequestMethod.GET)
    public User getUserById(int id) {
        System.out.println("查询用户信息");
        User user = userRepository.findUserById(id);
        System.out.println("userRepository:" + userRepository);
        return user;
    }

    /**
     * 添加用户信息
     * */
    @RequestMapping(value = "/addUser")
    public void addUser(User user) {
        user.setName("张三");
        user.setPassword("123456");
        user.setAge(23);
        user.setSex("男");
        userRepository.save(user);
    }
}

四、运行效果

添加用户信息

第一次运行会自动创建user表,但是是一张空表,先执行添加操作,浏览器输入:localhost:8081/user/addUser
,之后查看数据库表是否有添加成功
这里写图片描述
有张三的记录,代表操作成功了

根据ID查询用户信息

浏览器输入localhost:8081/user/getUserById?id=1
这里写图片描述

到此一个简单的spring-boot整合hibernate连接数据库的demo就完成了。

猜你喜欢

转载自blog.csdn.net/u013090299/article/details/80668875