Gradle创建Spring Boot项目——2JPA

简介: Gradle创建Spring Boot项目

Entity

package com.wuti.Entity;

import javax.persistence.*;
import java.io.Serializable;

/**
 * Created by wtrover on 2017/6/23.
 */
@Entity
@Table(name = "city")
public class City implements Serializable {

    @Id
    @Column(name = "id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    private String name;
    private String codeName;
    private String state;
    private String country;

    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 getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getCountry() {
        return country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public String getCodeName() {
        return codeName;
    }

    public void setCodeName(String codeName) {
        this.codeName = codeName;
    }
}
Dao
package com.wuti.Dao;

import com.wuti.Entity.City;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

/**
 * Created by wtrover on 2017/6/23.
 */
@Repository
public interface CityRepository extends JpaRepository<City, Integer> {

    //通过id查询
    City findById(int id);

    //通过名称查询
    City findByName(String name);

    //通过代号查询
    City findByCodeName(String codeName);
}
Service
package com.wuti.Service;

import com.wuti.Entity.City;

/**
 * Created by wtrover on 2017/6/23.
 */
public interface CityService {

    //通过id查询
    City findById(int id);

    //通过名称查询
    City findByName(String name);

    //通过代号查询
    City findByCodeName(String codeName);

    //添加一座城市
    City add(String name,String codeName,String state,String country);

    //更新一座城市
    City update(int id,String name,String codeName,String state,String country);

    //删除一座城市
    void delete(int id);

    //删除一座城市
    void delete(City city);
}
________________________________________________________________________


package com.wuti.Service;

import com.wuti.Dao.CityRepository;
import com.wuti.Entity.City;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * Created by wtrover on 2017/6/23.
 */
@Service(value = "CityService")
public class CityServiceImpl implements CityService {
    @Autowired
    private CityRepository cityRepository;

    @Override
    public City findById(int id) {
        return cityRepository.findById(id);
    }
    @Override
    public City findByName(String name) {
        return cityRepository.findByName(name);
    }
    @Override
    public City findByCodeName(String codeName) {
        return cityRepository.findByCodeName(codeName);
    }
    @Override
    public City add(String name, String codeName, String state, String country) {
        City city = new City();
        city.setName(name);
        city.setCodeName(codeName);
        city.setState(state);
        city.setCountry(country);
        return cityRepository.save(city);
    }
    @Override
    public City update(int id,String name,String codeName, String state,String country) {
        City city = new City();
        city.setId(id);
        city.setName(name);
        city.setCodeName(codeName);
        city.setState(state);
        city.setCountry(country);
        return cityRepository.save(city);
    }
    @Override
    public void delete(int id) {
        cityRepository.delete(id);
    }
    @Override
    public void delete(City city) {
        cityRepository.delete(city);
    }
}
Controller
package com.wuti.Controller;

import com.wuti.Entity.City;
import com.wuti.Service.CityService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created by wtrover on 2017/6/23.
 */
@RestController
@RequestMapping(value = "city/")
public class CityController {

    @Autowired
    private CityService cityService;

    /**
     * 添加一座城市
     * @param name
     * @param codeName
     * @param state
     * @param country
     * @return
     */
    @PostMapping(value = "add")
    public City cityAdd(@RequestParam("name") String name,
                            @RequestParam(value = "codeName", required = false, defaultValue = "") String codeName,
                            @RequestParam(value = "state", required = false, defaultValue = "0") String state,
                            @RequestParam("country") String country) {
        return cityService.add(name,codeName,state,country);
    }

    /**
     * 更新一座城市
     * @param id
     * @param name
     * @param codeName
     * @param state
     * @param country
     * @return
     */
    @PostMapping(value = "update")
    public City cityUpdate(@RequestParam("id") Integer id,
                        @RequestParam("name") String name,
                        @RequestParam(value = "codeName", required = false, defaultValue = "") String codeName,
                        @RequestParam(value = "state", required = false, defaultValue = "0") String state,
                        @RequestParam("country") String country) {
        return cityService.update(id,name,codeName,state,country);
    }

    /**
     * 删除一座城市
     * @param id
     */
    @PostMapping(value = "delete")
    public void cityDelete(@RequestParam("id") Integer id) {
        cityService.delete(id);
    }

}


相关文章
|
4月前
|
缓存 Unix Android开发
Android安卓项目调试之Gradle 与 Gradle Wrapper的概念以及常用gradle命令深度详解-优雅草卓伊凡
Android安卓项目调试之Gradle 与 Gradle Wrapper的概念以及常用gradle命令深度详解-优雅草卓伊凡
398 8
|
4月前
|
存储 API Android开发
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
236 4
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
|
4月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
284 6
|
6月前
|
JSON 分布式计算 大数据
springboot项目集成大数据第三方dolphinscheduler调度器
springboot项目集成大数据第三方dolphinscheduler调度器
365 3
|
6月前
|
Java 关系型数据库 数据库连接
Spring Boot项目集成MyBatis Plus操作PostgreSQL全解析
集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步骤与 MyBatis 类似,只不过在 MyBatis Plus 中提供了更多的便利功能,如自动生成 SQL、分页查询、Wrapper 查询等。
632 3
|
6月前
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
285 0
|
6月前
|
存储 Java 数据库连接
简单学Spring Boot | 博客项目的三层架构重构
本案例通过采用三层架构(数据访问层、业务逻辑层、表现层)重构项目,解决了集中式开发导致的代码臃肿问题。各层职责清晰,结合依赖注入实现解耦,提升了系统的可维护性、可测试性和可扩展性,为后续接入真实数据库奠定基础。
534 0
|
分布式计算 大数据 Java
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
133 0
|
6月前
|
Java 应用服务中间件 Maven
第01课:Spring Boot开发环境搭建和项目启动
第01课:Spring Boot开发环境搭建和项目启动
1242 0
|
人工智能 移动开发 Java
Android Studio插件版本与Gradle 版本对应关系
Android Studio插件版本与Gradle 版本对应关系
4249 0
Android Studio插件版本与Gradle 版本对应关系

热门文章

最新文章

推荐镜像

更多