当前位置: 首页 > news >正文

网站如何做rss订阅网站设关键字

网站如何做rss订阅,网站设关键字,有什么网站做头像,建网站怎么避免备案一、ORM ORM是“对象关系映射”(Object-Relational Mapping)的缩写。这是一种编程技术,用于将对象模型与关系型数据库系统之间的数据进行转换。在面向对象的编程语言中,数据通常以对象的形式表示;而在关系型数据库中&a…

一、ORM

  ORM是“对象关系映射”(Object-Relational Mapping)的缩写。这是一种编程技术,用于将对象模型与关系型数据库系统之间的数据进行转换。在面向对象的编程语言中,数据通常以对象的形式表示;而在关系型数据库中,数据则以表格的形式存储。

二、配置数据源

spring:#配置mybatis的数据源 DataSourcedatasource:username: rootpassword: 429619driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/easydatamybatis:mapper-locations: classpath:mapper/*.xmllogging:level:com.easy.dao: debug

1.配置了MyBatis的数据源(DataSource),包括用户名、密码、驱动类名和数据库连接URL。
2.指定了MyBatis的mapper文件路径,使用通配符*.xml表示所有以xml结尾的文件。
3.设置了日志级别,将com.easy.dao包下的日志输出级别设为debug,以便在调试时输出更多详细信息。

三、$#的区别

$ 符号:

文本替换:

      当你在XML映射文件中使用 $ 符号时,MyBatis会将它后面的表达式直接替换成对应的值。这种方式类似于简单的字符串替换。

如果 username 的值是 'admin' OR '1'='1,那么最终的SQL语句将会是:

SELECT * FROM user WHERE username = 'admin' OR '1'='1'

# 符号

预编译参数:

     当使用 # 符号时,MyBatis会将它后面的表达式作为预编译语句(PreparedStatement)的参数。这种方式更加安全,因为它会自动处理SQL注入的问题。

将SQL语句的语义确定,之后无论传递任何参数都不会改变SQL语句语义,可以有效防止SQL注入 也可以加快批处理的效率

类型转换:

如果 username 是一个字符串 "admin",那么最终的SQL语句将会是:、

SELECT * FROM user WHERE username = ?

四、增删改

1. 创建数据模型类 (Staff.java)

首先,我们创建一个数据模型类,也就是实体类Staff,它对应数据库中的Staff表。

package com.easy.bean;import java.math.BigDecimal;public class Staff {private int id;private String code;private String name;private BigDecimal salary;private String username;private String userpass;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getName() {return name;}public void setName(String name) {this.name = name;}public BigDecimal getSalary() {return salary;}public void setSalary(BigDecimal salary) {this.salary = salary;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getUserpass() {return userpass;}public void setUserpass(String userpass) {this.userpass = userpass;}
}

2. 创建数据访问对象接口 (IStaffDao.java)


接着,我们创建一个DAO接口IStaffDao,它定义了对Staff表的操作方法。

package com.easy.dao;import com.easy.bean.Staff;
import org.apache.ibatis.annotations.Mapper;@Mapper
public interface IStaffDao {String getNow();
//    操作数据的行数int addStaff(Staff staff);int delStaff(int id);int editStaff(Staff staff);
}

3. 编写Mapper文件 (Staff_Mapper.xml)


然后,我们创建对应的Mapper XML文件,定义具体的SQL语句

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.easy.dao.IStaffDao">
<!--    在这里写SQL语句--><select id="getNow" resultType="string">select now()</select>
<!--    预编译# 将SQL语句的语义确定,之后无论传递任何参数都不会改变SQL语句语义,可以有效防止SQL注入
也可以加快批处理的效率--><insert id="addStaff">insert into staff(code,name,salary,username,userpass)value(#{code},#{name},#{salary},#{username},#{userpass})</insert><delete id="delStaff">delete from staff where id=#{id}</delete><update id="editStaff">update staff set name=#{name},salary=#{salary},username=#{username},userpass=#{userpass} where id=#{id}</update>
</mapper>

4. 创建控制器类 (Controller) (EasyController.java)

最后,我们创建一个控制器类EasyController,用来处理HTTP请求,并通过注入IStaffDao来完成实际的数据操作。

package com.easy.controller;import com.easy.bean.Staff;
import com.easy.dao.IStaffDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.math.BigDecimal;@RestController
public class EasyController {@AutowiredIStaffDao dao;@GetMapping("now")public String now(){return dao.getNow();}@PostMapping("staff")public String addStaff(Staff staff){
//        Staff staff=new Staff();
//        staff.setCode("10001");
//        staff.setName("何容与");
//        staff.setSalary(new BigDecimal(10000));
//        staff.setUsername("hry");
//        staff.setUserpass("123456");dao.addStaff(staff);return "添加成功";}@DeleteMapping("staff/{id}")public String delStaff(@PathVariable int id){dao.delStaff(id);return "删除成功";}@PutMapping("staff")public String editStaff(Staff staff){dao.editStaff(staff);return "修改成功";}
}

http://www.yayakq.cn/news/366236/

相关文章:

  • 黄冈网站推广平台门户网站视频
  • 网上商城网站设计二网站手
  • 东莞网站建设团队全网天下南京学网站建设
  • 主题资源网站建设步骤制作网站的步骤域名
  • 网站源文件路由器可以做网站服务器吗
  • 新手练习做网站哪个网站比较合适软文营销的优势
  • 专业做衬衫哪个网站学做预算有网站吗
  • 设置网站维护页面谷歌浏览器下载手机版安卓
  • 电商网站前端模板下载临沂网站建设怎么样
  • 常州发布信息的有什么网站政务网站建设模块
  • 西安做网站找缑阳建抖音电商
  • qq官方网站登录入口南阳网站建设域名公司
  • 雅思培训机构哪家好机构排名seo运营学校
  • 网站建设 会员可以看的内容更多谷歌云 wordpress 建站
  • 校园在线网站怎么做东莞网站建设和制作
  • 外贸网站建设优化上海施工单位
  • 做房地产要自己开网站0基础学习网站建设
  • 墙外必去的网站未备案的网站 访问 hots
  • 网站设计用的技术工程建设标准化
  • 建设网站需要哪些东西wordpress get_the_date
  • 做论坛网站如何赚钱的免费动态域名解析软件
  • 好看的美食网站设计福州 网站设计
  • 哪个网站可以做360度评估wordpress不显示内容你
  • 南昌外包建站韩国做hh网站
  • 学做php网站做网站的手机软件
  • 邯郸做wap网站的地方宁波最专业的seo公司
  • 公司建设网站需求分析报告在线做爰直播网站
  • 重庆市工程建设信息网新网站动画设计方案及内容
  • wordpress 进去管理成都seo的方法
  • 玉林电信网站备案设计公司的企业远景