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

深圳网站有哪些内容深圳网站建设599元全包

深圳网站有哪些内容,深圳网站建设599元全包,.net网站做增删改,网站案例介绍本系列共涉及4个框架#xff1a;Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点#xff0c;根据序号学习即可。 目录 本系列共涉及4个框架#xff1a;Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点#xff0c;根据序号学习即可。 …本系列共涉及4个框架Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点根据序号学习即可。 目录 本系列共涉及4个框架Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点根据序号学习即可。 1、重要标签 1.1动态SQL 1.2 其他 2、#{}与${}的区别 2.1 #{}与${}的使用 2.2 #{}与${}的区别 3、配置文件 3.1 配置日志 3.2 配置大驼峰 3.3配置映射文件路径 4、数据库连接池 4.1 什么是数据库连接池 4.2 使用 5、MySQL数据库开发企业规范 5.1 表名规范 5.2 表的设计规范 5.3 表的查询 1、重要标签 1.1动态SQL 1动态SQL是MyBatis的强大特性之一能够完成不同条件下不同的sql拼接 2if标签 ①当某个字段是必填字段或非必填字段时如果有不确定的字段传入那么程序应该如何实现——使用if标签对字段做出判断 ②例子 a、接口定义 Integer insertUserByCondition(UserInfo userInfo); b、Mapper.xml实现 【对gender字段进行非空校验】 insert idinsertUserByConditioninsert into userinfo(username,password,age,if testgender !null gender, /if phone)values(#{username},#{password},#{age},if testgender !null #{gender}, /if #{phone})/insert c、注解方式 直接把上面的内容使用script/script标签括起来就可以了非常不推荐 3trim标签 ①上述的插入用户的功能只是有一个gender字段可能是选填项如果有多个字段一般考虑使用标签结合标签对多个字段都采取动态生成的方式 ②标签中由如下属性 prefix表示整个语句块以prefix的值作为前缀 suffix表示整个语句块以suffix的值作为后缀 prefixOverrides表示整个语句块要去除掉的前缀 suffixOverrides表示整个语句块要去除掉的后缀 ③调整上述的Mapper.xml insert idinsertUserByConditioninsert into userinfotrim prefix( suffix) suffixOverrides,if testusername !null username, /if if testpassword !null password, /if if testage !null age, /if if testgender !null gender, /if if testphone !null phone /if/trimvaluestrim prefix( suffix) suffixOverrides,(#{username},#{password},#{age},if testusername !null #{username}, /ifif testpassword !null #{password}, /ifif testage !null #{age}, /if if testgender !null #{gender}, /ifif testphone!null #{phone}/if )/trim/insert4where标签 ①根据属性做where条件查询时可以使用where标签 ②例子 a、接口定义 ListUserInfo queryByCondition(); b、Mapper.xml实现 select idqueryByCondition resultTypeUserInfoselect id,username,age,gender,phone,delete_flagfrom userinfowhereif testusername ! null and name #{username},/ifif testage ! nulland age #{age},/ifif testdelete_flag ! nulland delete_flag #{deleteFlag},/if/where /select 5set标签 ①根据传入的属性来更新数据可以使用标签来指定动态内容 ②例子 a、接口定义 Integer  updateUserByCondition(UserInfo userInfo) b、Mapper.xml实现 update idupdateUserByConditionupdate userinfosetif testusername ! null name #{username},/ifif testage ! null age #{age},/ifif testdelete_flag ! null delete_flag #{deleteFlag},/if/setwhere id #{id}/update ③set动态的在SQL语句中插入set关键字并会删除额外的逗号用于更新语句中这个标签也可以使用trim prefixset suffixOverrides,替换 6foreach标签 ①对集合进行遍历可以使用该标签。标签有如下属性 collection绑定方法参数中集合如ListSetMap或数组对象 item遍历时的每一个对象 open语句块开头的字符串 close语句块结束的字符串 separator每次遍历之间间隔的字符串 ②例子 a、接口定义 void deleteById(ListInteger ids); b、Mapper.xml实现 delete iddeleteByIdsdelete from userinfo where id inforeach collectionids itemid separator, open( close)#{id}/foreach/delete 7include标签 ①在xml映射文件中配置的SQL有时会存在很多重复的片段此时就会有很多冗余的代码我们可以将重复的代码进行抽取通过sql标签封装SQL片段然后在通过include标签进行引用 ②sql定义可重用的的SQL片段 include通过属性refid指定包含的SQL片段 ③例子 sql idcommonSelectselect id,name,gender,birthday from student /sql!--根据id查询学生--select idgetById resultTypeorg.fanhuiling.pojo.Studentinclude refidcommonSelect/includewhere id#{id}/select 1.2 其他 2、#{}与${}的区别 2.1 #{}与${}的使用 1使用Integer作为参数 ① #{ }为参数赋值 Select(select username,password,age,gender,phone from userinfo where id#{ }) UserInfo queryById(Integer id); 打印SQL语句日志如下 select username,password,age,gender,phone from userinfo where id? 我们输入的参数id 并没有在后面拼接而是使用进行占位这种就称为预编译SQL ② ${ }为参数赋值 Select(select username,password,age,gender,phone from userinfo where id${ }) UserInfo queryById(Integer id); 打印SQL语句日志如下 select username,password,age,gender,phone from userinfo where id1 我们输入的参数1就直接与SQL语句进行了拼接  2使用String作为参数 ① #{ }为参数赋值 Select(select username,password,age,gender,phone from userinfo where username#{ }) UserInfo queryByName(String name); 打印SQL语句日志如下 select username,password,age,gender,phone from userinfo where username? ② ${ }为参数赋值 Select(select username,password,age,gender,phone from userinfo where username${ }) UserInfo queryByName(String name); 打印SQL语句日志如下 select username,password,age,gender,phone from userinfo whereusernamezhansan 我们输入的参数zahnsan拼接在SQL 语句后了但是这样操作会报错因为zhangsan是字符串在SQL语句中应该用引号包裹然而使用${ }不会拼接单引号  所以程序会报错。不过可手动添加引号不推荐 2.2 #{}与${}的区别 1#{ }使用的是预编译SQL通过占位的方式提前对SQL进行编译然后把参数填充到SQL语句中#{ }会根据出纳书类型自动拼接单引号 2 ${ }会直接进行字符串替换一起对SQL进行编译。如果参数为字符串类型需要手动添加上引号 3#{ }是预编译SQL而${ }是即时SQL 4更推荐使用预编译SQL一是性能更高【预编译SQL编译一次后就会把SQL语句给缓存起来后面需要再次使用该SQL语句时不会再次编译只是输入的参数不同罢了省去了解析优化的过程以此来提高效率】二是更安全【防止SQL注入正常情况下where nameadmin是可以正常登录的但是将admin改成 or 11  》where name or 11始终为真也可以登录这就是SQL注入的典型例子】 3、配置文件 3.1 配置日志 # 配置 mybatis 的日志指定输出到控制台 mybatis.configuration.log-implorg.apache.ibatis.logging.stdout.StdOutImpl 3.2 配置大驼峰 # 开启 mybatis 的驼峰命名自动映射开关 mybatis.configuration.map-underscore-to-camel-casetrue 3.3配置映射文件路径 # 配置 mybatis 的映射文件路径需要修改成对应值 mybatis.mapper-locationsclasspath*:mapper/*.xml 4、数据库连接池 4.1 什么是数据库连接池 1数据库连接池负责分配、管理和释放数据库连接它允许应用程序重复使用一个现有的数据库连接池而不是重新创建一个新的 ①无连接池每次执行SQL语句要先创还能一个新的连接对象然后执行SQL语句SQL语句执行完再关闭连接对象释放资源这种重复的创建连接、销毁连接比较消耗资源 ②有连接池程序启动时会在数据库连接池中创建一定数量的Connection对象当客户请求数据库连接池会从数据库连接池中获取Connection对象然后执行SQL、SQL语句执行完毕后再把Connection归还给连接池 2作用使用数据库连接池避免频繁的创建连接销毁连接 3优点减少了网络开销资源重用提升了系统的性能 4.2 使用 1常见的数据库连接池C3P0、DBCP、Druid、Hikari 2目前比较流行的是Druid、HikariSpringBoot默认是Hikari日本研发的, 大NO特NO咱们还是使用优秀的阿里巴巴开发的Druid连接池吧直接在pom.xml文件里面添加相应依赖即可使用 dependencygroupIdcom.alibaba/groupIdartifactIddruid-spring-boot-starter/artifactIdversion1.1.17/version/dependency 5、MySQL数据库开发企业规范 5.1 表名规范 1表名字段名使用小写字母或数字单词之间用下划线分割。尽量避免出现数字开头或者两个下划线中间只出现数字。数据库字段名的修改代价很大所以字段名是需要慎重考虑的 2MySQL在Windows下不区分大小写但是在Linux下默认是区分大小写的所以最好数据库名表名字段名都是小写 5.2 表的设计规范 1在表的设计中除了实体需要的字段名之外还需要必备的三字段id、create_time、update_time【id为自增主键步长为1create_time、update_time的类型均为datetimecreate_time为创建时间update_time为更新时间】 2有同等含义的字段即可字段名不做强制要求 5.3 表的查询 在表的查询中避免使用*作为查询的字段列表select * 是一个非常危险的操作当数据量特别大的时候还没有查询完内存就占满了真的真的特别危险所以在查询时最好表明需要哪些字段
http://www.dnsts.com.cn/news/7917.html

相关文章:

  • 通许画册设计网站网站建设和管理的总结怎么写
  • 桂林北站停车场收费标准wordpress 评论验证
  • 苏州建站公司认准苏州聚尚网络wordpress管理面板忘记密码
  • 哪里有网站建设手机机械代工
  • 关于做公司app的软件或网站wordpress多语言站点
  • 网站怎么做rss网站开发公司管理模式
  • 蜘蛛网站长工作职责附近做广告牌的店
  • 自己建网站需要钱吗找工作的网站
  • 网站手机模板源码下载网站开发 公司简介
  • 山东港基建设集团网站国内十大网站建设公司
  • 做淘宝客网站多少钱html网站设计
  • 成都网站建设与网站推广培训公司在网上做网站怎么做账
  • 青岛网站建设案例wordpress博客搬家主页404
  • 企业网站怎么制作php制作网页
  • 有哪些网站是可以做会计题目的免费小程序制作网站
  • 咖啡网站源码网页设计和网站建设的区别
  • 网站推广的方法中山网站建设哪家好
  • 网站后台设置关键词在哪设百度竞价平台官网
  • 简单的阿里云建设网站软考考试科目有哪些
  • 如何推广公司网站wordpress 后台 shell
  • cms做网站可以做些什么网站搭建网站一条龙
  • 软件开放和网站开发专业移动网站建设
  • 一元购网站建设多少钱网站收录查询平台
  • 石家庄 外贸网站建设郴州网站建设推广服务
  • 新开传奇网站站英文网站建设600
  • 鹤壁建设网站推广如东网站开发
  • 余姚网站建设yyshjwordpress填写表单下载
  • 聊城手机网站建设价格备案域名网站大全
  • 网站备案上传照片几寸线上营销的优势和劣势
  • 乡镇卫生院网站建设模板网站开发合同甲方的权利