汕头市企业网站建设哪家好wordpress 副标题调用

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

汕头市企业网站建设哪家好,wordpress 副标题调用,溧阳网站设计,wordpress404页面更爱Mybatis的综合案例-学生信息查询系统 需求一#xff1a;当用户输入的学生姓名不为空#xff0c;则只根据学生信息进行查询; 当用户输入的学生姓名为空#xff0c;且专业不为空#xff0c;那么就根据学生专业进行学生的查询 需求二#xff1a;查询所有id值小于5的学生信息…Mybatis的综合案例-学生信息查询系统 需求一当用户输入的学生姓名不为空则只根据学生信息进行查询; 当用户输入的学生姓名为空且专业不为空那么就根据学生专业进行学生的查询 需求二查询所有id值小于5的学生信息 1.搭建项目环境: ​ 往pom中写入依赖引入,引入我们所需要的各个架包Mybatis3.5.2、Mysql8.0、Junit4.12、log4j1.2.17、(若是无法使用maven方式导入的话我会带上项目需要的所有离线jar架包可以自行导入到自己项目的lib下进行安装) !–pom.xml–dependenciesdependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.2/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.11/version/dependencydependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/version!– scopetest/scope–scopecompile/scope/dependencydependencygroupIdlog4j/groupIdartifactIdlog4j/artifactIdversion1.2.17/version/dependency/dependenciesbuildresourcesresourcedirectorysrc/main/java/directoryincludesinclude/*.properties/includeinclude/*.xml/include/includesfilteringtrue/filtering/resource/resources/build2.数据库准备 ​ 我们这次的项目是学生信息查询系统因此我们需要准备名为studentinfoselectsystem的数据库也可缩写为studentiss命名规则:项目名称要全小写其中的表为dm_student ​ SQL语句如下若是不能使用也可以在文章头下载数据库文件sql Create table dm_student( id int(32) PRIMARY KEY AUTO_INCREMENT, name varchar(50), major varchar(50), sno varchar(16) );insert into dm_student VALUES(1,Stevedash,数学,100); insert into dm_student VALUES(2,Steve,语文,100); insert into dm_student VALUES(3,Kdash,英语,100); insert into dm_student VALUES(4,wgd,数学,80); insert into dm_student VALUES(5,dxm,语文,90); insert into dm_student VALUES(6,god,英语,60);3.配置文件准备 ​ 准备好所有的配置文件mybatis-config.xml(mybatis的核心配置文件)、db.properties(jdbc链接数据库配置文件)、log4j.propertie(log4j日志导出配置文件) 具体代码如下 mybatis-config.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd configuration!– 环境配置 –!– 加载类路径下的属性文件 –properties resourcedb.properties/!– 设置别名为pojo–typeAliasespackage namepojo//typeAliasesenvironments defaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/!– 数据库连接相关配置 ,db.properties文件中的内容–dataSource typePOOLEDproperty namedriver value\({driver}/property nameurl value\){url}/property nameusername value\({username}/property namepassword value\){password}//dataSource/environment/environments!– mapping文件路径配置 –mappersmapper resourcemapper/StudentMapper.xml//mappers /configurationdb.properties drivercom.mysql.cj.jdbc.Driver urljdbc:mysql://localhost:3306/studentinfoselectsystem?serverTimezoneUTCcharacterEncodingutf8useUnicodetrueuseSSLfalse usernameroot passwordrootlog4j.propertie ###\u6839logger\u8BBE\u7F6E### log4j.rootLogger debug,console,file### log4j.appender.console org.apache.log4j.ConsoleAppender log4j.appender.console.Target System.out log4j.appender.console.layout org.apache.log4j.PatternLayout log4j.appender.console.Threshold DEBUG log4j.logger.java.sql.Statementdebug log4j.appender.console.layout.ConversionPattern [%p] %d %c - %m%n### log4j.appender.file org.apache.log4j.DailyRollingFileAppender ### log4j.appender.file.File D:/log/web.log log4j.appender.file.Append true log4j.appender.file.Threshold warn log4j.appender.file.layout org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern [%p] %d %c - %m%n 4.编写pojo类 ​ pojo(普通java对象)创建出持久化类Student与数据库dm_student进行映射关联要在类中声明好变量和数据库表中的字段一一对应并且生成getter和setter方法。 Student.java具体代码如下 package pojo;public class Student {private int id;//对应数据库字段idprivate String name;//姓名 对应数据库字段nameprivate String major;//专业 对应数据库字段majorprivate String sno;学号 对应数据库字段sno//生成getter和setter方法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 getMajor() {return major;}public void setMajor(String major) {this.major major;}public String getSno() {return sno;}public void setSno(String sno) {this.sno sno;}/重写toString()方法让其变成输出我们想要的信息方便我们检查测试功能需求是否满足/Overridepublic String toString(){return Student{idid,namename,majormajor,snosno};} }5.编写StudentMapper.xml ​ 在resources下新建一个packagemapper,在mapper 包下新建一个StudentMapper.xml。 ①StudentMapper.xml具体代码如下: ?xml version1.0 encodingUTF-8? !DOCTYPE mapperPUBLIC -//mybatis.org//DTD mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtdmapper namespacemapper.StudentMapperselect idselectStudentByNameOrMajor parameterTypeStudent resultTypeStudentselect * from dm_student where 11choosewhen testname!null and name!and name#{name}/whenwhen testmajor!null and major!and major#{major}/whenotherwiseand sno is not null/otherwise/choose/selectselect idselectAllIdSmallThanNumber parameterTypeint resultTypeStudentSELECT * FROM dm_student WHERE id INforeach itemid collectionlist open( separator, close)#{id}/foreach/selectinsert idaddStudent parameterTypeStudentinsert into dm_student(id,name,marjor,sno) values(#{id},#{name},#{marjor},#{sno})/insertdelete iddeleteStudent parameterTypeStudentdelete from dm_student where id #{id}/deleteselect idgetStudentByList resultTypeStudentselect * from dm_student where id inforeach collectionlist itemid open( separator, close)#{id}/foreach/selectselect idselectByIdLessThan parameterTypeint resultTypeStudentSELECT * FROM dm_student WHERE id lt; #{id}/select/mapper②编写测试类StudentTest.java package Test;import org.apache.ibatis.session.SqlSession; import org.apache.log4j.Logger; import org.junit.jupiter.api.Test; import pojo.Student; import utils.MyBatisUtil;import java.util.ArrayList; import java.util.List;class StudentTest {private Logger logger Logger.getLogger(StudentTest.class);/当用户输入的学生姓名不为空则只根据学生信息进行查询;当用户输入的学生姓名为空且专业不为空那么就根据学生专业进行学生的查询/Testvoid selectByNameOrMajor() {SqlSession session MyBatisUtil.createSqlSession();Student studentnew Student();//student.setName(SteveDash);//student.setMajor(数学);ListStudent listsession.selectList(selectStudentByNameOrMajor,student);for (Student student1:list){logger.info(student1.toString());}}/查询所有id值小于5的学生信息/Testvoid selectAllIdSmallThanNumber() {SqlSession session MyBatisUtil.createSqlSession();ListInteger intListnew ArrayListInteger();for(int i1;i5;i){intList.add(i);}ListStudent listsession.selectList(selectAllIdSmallThanNumber,intList);for (Student student1:list){logger.info(student1.toString());}}/查询所有id值小于number的学生信息/Testvoid selectAllIdNumber() {SqlSession session MyBatisUtil.createSqlSession();ListStudent listsession.selectList(selectByIdLessThan,5);for (Student student1:list){logger.info(student1.toString());}} }反思需求二是不是可以更改成自己想输入那个数字就输入哪个数字去查询小于该数字的学生信息 那么最简单的编写SQl语句就是这个了吧 但是你会发现不可以 报错了是因为它识别不出来所以我们得用其他字符来替代 select idselectByIdLessThan parameterTypeint resultTypeStudentSELECT * FROM dm_student WHERE id lt; #{id}/select解释一下这串代码 select 元素这是 MyBatis 中用于定义查询语句的标签。通过 id 属性指定查询语句的唯一标识符parameterType 属性指定查询语句的输入参数类型resultType 属性指定查询结果的返回类型。id 属性指定查询语句的唯一标识符可以在 Java 代码中通过这个标识符来调用对应的查询语句。parameterType 属性指定查询语句的输入参数类型我们指定为 int表示我们将传入一个 int 类型的参数。resultType 属性指定查询结果的返回类型我们指定为 Student表示查询结果将被映射为 Student 类型的对象。SQL 查询语句SELECT * FROM dm_student WHERE id #{id}。这是实际的 SQL 查询语句。其中SELECT * FROM dm_student 表示从名为 dm_student 的表中查询所有列的数据。WHERE id #{id} 表示筛选条件只查询满足 id 小于传入的参数的记录。lt;这是 HTML 实体编码表示小于符号 。在 XML 中 有特殊的含义因此需要使用实体编码表示。#{id}这是 MyBatis 的参数占位符会在查询执行时被实际的参数值替代。在这个例子中#{id} 表示传入的 int 类型的参数值。 作者Stevedash 发表于2023年8月23日 16点28分 注本文内容基于个人学习理解如有错误或疏漏欢迎指正。感谢阅读如果觉得有帮助请点赞和分享。