常用的复制代码
分类: Java vue 专栏: 复制代码块 标签: 代码复制
2023-03-26 16:31:42 1360浏览
代码复制
springboot数据库连接配置
spring.datasource.url=jdbc:mysql:///assay?characterEncoding=utf8&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=123456
spring: datasource: password: 123456 url: jdbc:mysql:///assay?characterEncoding=utf8&serverTimezone=Asia/Shanghai username: root
统一返回结果
@Data @AllArgsConstructor public class ResultVo<T> { private Integer code; private String mess; private T data; //success public static<T> ResultVo success(String mess,T data){ return new ResultVo(200,mess,data); } //error public static<T> ResultVo error(String mess){ return new ResultVo(500,mess,null); } }
//统一返回结果的类 @Data public class R { //是否成功 private Boolean success; //返回码 private Integer code; //返回消息 private String message; // 返回数据 private Map<String, Object> data = new HashMap<String, Object>(); //把构造方法私有 private R() {} //成功静态方法 public static R ok() { R r = new R(); r.setSuccess(true); r.setCode(ResultCode.SUCCESS); r.setMessage("成功"); return r; } //失败静态方法 public static R error() { R r = new R(); r.setSuccess(false); r.setCode(ResultCode.ERROR); r.setMessage("失败"); return r; } public R success(Boolean success){ this.setSuccess(success); return this; } public R message(String message){ this.setMessage(message); return this; } public R code(Integer code){ this.setCode(code); return this; } public R data(String key, Object value){ this.data.put(key, value); return this; } public R data(Map<String, Object> map){ this.setData(map); return this; } }
自动填充创建时间和修改时间
@Component public class MyMetaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { //属性名称,不是字段名称 this.setFieldValByName("gmtCreate", new Date(), metaObject); this.setFieldValByName("gmtModified", new Date(), metaObject); } @Override public void updateFill(MetaObject metaObject) { this.setFieldValByName("gmtModified", new Date(), metaObject); } }
@ApiModelProperty(value = "创建时间") @TableField(fill = FieldFill.INSERT) private Date gmtCreate; @ApiModelProperty(value = "更新时间") @TableField(fill = FieldFill.INSERT_UPDATE) private Date gmtModified;
统一异常处理
全局异常处理
@ControllerAdvice public class GlobalExceptionHandler { //指定出现什么异常执行这个方法 @ExceptionHandler(Exception.class) @ResponseBody //为了返回数据 public R error(Exception e) { e.printStackTrace(); return R.error().message("执行了全局异常处理.."); } }
特定异常处理
@ControllerAdvice public class GlobalExceptionHandler { //指定出现什么异常执行这个方法 @ExceptionHandler(ArithmeticException.class) @ResponseBody //为了返回数据 public R error(ArithmeticException e) { e.printStackTrace(); return R.error().message("执行了算术异常处理.."); } }
自定义异常处理
- 第一步创建自定义异常类继承RuntimeException写异常属性
@Data @AllArgsConstructor @NoArgsConstructor public class JfException extends RuntimeException { private Integer code;//状态码 private String msg;//异常信息 }
- 在统一异常类里添加规则
@ControllerAdvice public class GlobalExceptionHandler { //自定义异常 @ExceptionHandler(JfException.class) @ResponseBody //为了返回数据 public R error(JfException e) { e.printStackTrace(); return R.error().code(e.getCode()).message(e.getMsg()); } }
- 执行自定义异常
数据库配置属性文件
jdbc.driver=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql:///assay?characterEncoding=utf8&serverTimezone=Asia/Shanghai jdbc.username=root jdbc.password=123456
<bean class="org.apache.commons.dbcp.BasicDataSource" id="dataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean>
pom文件
<!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.26</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.32</version> </dependency> <!--数据库连接池--> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <!--aop扩展--> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.8.13</version> </dependency>
正则表达式
// 手机号 reg =/^[1][3,4,5,7,8][0-9]{9}$/; // 身份证号码 reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; // 邮箱 reg =/^([a-zA-Z0-9]+[-_\.]?)+@[a-zA-Z0-9]+\.[a-z]+$/; // 日期带时分秒的 2022/03/30格式的 let reg = /[1-9]\d{3}\/(((0[13578]|1[02])\/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)\/(0[1-9]|[12][0-9]|30))|(02\/(0[1-9]|[1][0-9]|2[0-9]))) ([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]/; //日期,格式2022-03-04 reg=/^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/;
json消息转换器
<mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>application/json;charset=utf-8</value> <value>text/html;charset=utf-8</value> </list> </property> </bean> <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>application/json;charset=utf-8</value> <value>text/html;charset=utf-8</value> </list> </property> <property name="defaultCharset" value="utf-8"/> </bean> </mvc:message-converters> </mvc:annotation-driven>
easycode插件生成的代码分页问题
<!--为了使用Pageable分页--> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-commons</artifactId> <version>1.13.11.RELEASE</version> </dependency>
跨域问题
- 服务端解决
@RestController @CrossOrigin//解决跨域 public class BrandController {
module.exports = merge(prodEnv, { NODE_ENV: '"development"', BACK_API: '"http://localhost:8888"' }) back_url:process.env.BACK_API, axios({ method:"post", data:that.searchForm, url:that.back_url+"/getAllBrands" }).then(function (result) {
- 前端解决
proxyTable: { '/':{ target: 'http://localhost:8888',
url:"/getAllBrands"
linux常用命令
- 防火墙:
1. 查看防火墙开启放行的端口 firewall-cmd --list-all 2. 开启防火墙: systemctl start firewalld 3. 设置开放的端口号: sudo firewall-cmd --add-port=80/tcp --permanent 4. 重启防火墙: firewall-cmd --reload
好博客就要一起分享哦!分享海报
此处可发布评论
评论(2)展开评论
他的专栏
他感兴趣的技术