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

网站登录账号密码保存在哪里网站 用户登陆 模板

网站登录账号密码保存在哪里,网站 用户登陆 模板,教育类网页设计欣赏,网站服务公司案例动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态…

动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态 SQL 恰好解决了这一问题,可以根据场景动态的构建查询

动态 SQL 只有几个基本元素,与 JSTL 或 XML 文本处理器相似,十分简单明了,大量的判断都可以在 MyBatis 的映射 XML 文件里配置,以达到许多需要大量代码才能实现的功能。动态 SQL 大大减少了编写代码的工作量,更体现了 MyBatis 的灵活性、高度可配置性和可维护性

if标签:条件判断

MyBatis if 类似于 Java 中的 if 语句,是 MyBatis 中最常用的判断语句

if 语句使用方法简单,常常与 test 属性联合使用。语法如下

<if test="判断条件">SQL语句
</if>

当判断条件为 true 时,才会执行所包含的 SQL 语句。
最常见的场景是在 if 语句中包含 where 子句,例如

<select id="selectAllWebsite" resultMap="myResult">select id,name,url from website<if test="name != null">where name like #{name}</if>
</select>

以上代表表示根据网站名称去查找相应的网站信息,但是网站名称是一个可填可不填的条件,不填写的时候不作为查询条件。


可多个 if 语句同时使用。以下语句表示为可以按照网站名称(name)或者网址(url)进行模糊查询。如果您不输入名称或网址,则返回所有的网站记录。但是,如果你传递了任意一个参数,它就会返回与给定参数相匹配的记录。

<select id="selectAllWebsite" resultMap="myResult">select id,name,url from website where 1=1<if test="name != null">AND name like #{name}</if><if test="url!= null">AND url like #{url}</if>
</select>

choose、when和otherwise标签

MyBatis 中动态语句 choose-when-otherwise 类似于 Java 中的 switch-case-default 语句。由于 MyBatis 并没有为 if 提供对应的 else 标签,如果想要达到<if>...<else>...</else> </if> 的效果,可以借助 <choose>、<when>、<otherwise> 来实现。
动态语句 choose-when-otherwise 语法如下

<choose><when test="判断条件1">SQL语句1</when ><when test="判断条件2">SQL语句2</when ><when test="判断条件3">SQL语句3</when ><otherwise>SQL语句4</otherwise>
</choose>

choose 标签按顺序判断其内部 when 标签中的判断条件是否成立,如果有一个成立,则执行相应的 SQL 语句,choose 执行结束;如果都不成立,则执行 otherwise 中的 SQL 语句。这类似于 Java 的 switch 语句,choose 为 switch,when 为 case,otherwise 则为 default。

示例

以下示例要求:

  • 当网站名称不为空时,只用网站名称作为条件进行模糊查询;
  • 当网站名称为空,而网址不为空时,则用网址作为条件进行模糊查询;
  • 当网站名称和网址都为空时,则要求网站年龄不为空。

 WebsiteMapper.xml 代码如下

<mapper namespace="net.cc.mapper.WebsiteMapper"><select id="selectWebsite"parameterType="net.cc.po.Website"resultType="net.cc.po.Website">SELECT id,name,url,age,countryFROM website WHERE 1=1<choose><when test="name != null and name !=''">AND name LIKE CONCAT('%',#{name},'%')</when><when test="url != null and url !=''">AND url LIKE CONCAT('%',#{url},'%')</when><otherwise>AND age is not null</otherwise></choose></select>
</mapper>

测试类代码

public class Test {public static void main(String[] args) throws IOException {// 读取配置文件mybatis-config.xmlInputStream config = Resources.getResourceAsStream("mybatis-config.xml"); // 根据配置文件构建SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(config);// 通过SqlSessionFactory创建SqlSessionSqlSession ss = ssf.openSession();Website site = new Website();site.setname("编程");List<Website> siteList = ss.selectList("net.cc.mapper.WebsiteMapper.selectWebsite", site);for (Website ws : siteList) {System.out.println(ws);}}
}

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

相关文章:

  • 海南专业网站运营托管优化型网站的好处
  • 盐城市滨海县建设局网站任务网站(做任务学技能的)
  • 无锡设计公司排名3 如何进行网站优化设计
  • 郑州做网站优化公司仿第四城地方门户网站模板
  • 灵山建设局网站外贸开发产品网站模板
  • 怎样免费注册网站域名wordpress盈利
  • 企业网站建设(信科网络)大连高端模板建站
  • 郑州联通网站备案苏州建设公司
  • 网站建设清单大连个人做网站
  • 维护网站建设空间出租商城网站建设基础设计
  • 如何用万网做自己的网站我要安装百度
  • 二手房网签合同在哪个网站做做电影网站哪个源码好
  • 贵州光利达建设工程有限公司局网站网站开发 百度云
  • ftp怎么连接网站空间行业网站cms
  • 网站关键词一般设置几个微网站 微官网的区别吗
  • 怎么在手机上制作网站用帝国cms系统怎么做网站
  • 免费网站申请域名39939cn网站改版要重新备案
  • 比较简洁大方的网站wordpress 页面满屏
  • 网站建设指的是什么国外域名的网站怎么做
  • 成都网站公司手机营销软件
  • 有什么网站做打印店新手网络设计师人生规划
  • 公司怎么注册网站免费高清免费素材网站
  • wang域名注册网站网站推广宜选刺盾云下拉
  • 网站建设咨询有客诚信wordpress主题出售
  • 建设银行杭州网站首页大连开发区盛京医院
  • 网站开发实训要求网站开发语言学习C 吗
  • 网站建设服务器什么意思wordpress自定义字段
  • 如何做网站关键字优化免费网站创建工具
  • 网站备案是备什么网站搭建视频
  • 网站的角色设置如何做建设工程抗震管理条例