- 博客(148)
- 收藏
- 关注
原创 mybatis 一级缓存 二级缓存
一级缓存Mybatis的一级缓存在session里只要通过session查过的数据,都会放在session上,下一次再查询相同id的数据,都直接从缓存中取出来 Category c1 = session.selectOne("getCategory", 1); System.out.println(c1); Category c2 = session.selectOne("getCategory", 1); System.out.print
2021-07-09 16:40:52 482
原创 mybatis中resultMap
mybatis中resultMap一、字段映射(result标签)<select id="getUsers" resultType="User"> SELECT u.id as uid,u.username,u.password FROM USER u</select>这里我们把id改为了uid,对象是id与查询的是uid 不对应,在结果集中,我们将会丢失id数据。这时候我们就可以定义一个resultMap,来映射不一样的字段<resultMap id="get
2021-07-09 11:56:56 620 1
原创 filter 登陆验证 java ee
在登入验证的servlet中如果用户输入正确的账号密码,就跳转 ,并且把用户名以"userName"放进sessionrequest.getSession().setAttribute("userName", name);通过filter实现登录验证package filter; import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date; import javax.servlet
2021-06-07 18:07:19 498
原创 过滤器 filter j2ee
什么是过滤器?Filter就像一个一个哨卡,用户的请求需要经过Filter并且可以有多个过滤器doFilter()方法doFilter()方法完成过滤操作。当请求发过来的时候,过滤器将执行doFilter方法。在HttpServletRequest 执行doFilter()之前,根据需要检查 HttpServletRequest ,同时也可以修改HttpServletRequest 请求头和数据。在HttpServletResponse 执行doFilter()之后,根据需要检查 HttpSe
2021-06-07 16:45:09 244
原创 servlet 自启动
使用load-on-startup 元素标记容器在web.xml中添加如<load-on-startup>10</load-on-startup>load-on-startup元素标记容器是否应该在web应用程序启动的时候就加载这个servlet,(实例化并调用其init()方法)。它的值必须是一个整数,表示servlet被加载的先后顺序。 如果该元素的值为负数或者没有设置,则容器会当Servlet被请求时再加载。如果值为正整数或者0时,表示容器在应用启动时就加载
2021-06-03 12:27:30 253
原创 servlet HttpServletResponse用法
response是HttpServletResponse的实例,用于提供给浏览器的响应信息设置响应内容PrintWriter pw= response.getWriter();通过response.getWriter(); 获取一个PrintWriter 对象可以使用println(),append(),write(),format()等等方法设置返回给浏览器的html内容。public void doGet(HttpServletRequest request, HttpServletResp
2021-05-22 15:08:06 304
原创 servlet HttpServletRequest常见方法
常见方法request.getRequestURL(): 浏览器发出请求时的完整URL,包括协议 主机名 端口(如果有)"request.getRequestURI(): 浏览器发出请求的资源名部分,去掉了协议和主机名"request.getQueryString(): 请求行中的参数部分,只能显示以get方式发出的参数,post方式的看不到request.getRemoteAddr(): 浏览器所处于的客户机的IP地址request.getRemoteHost(): 浏览器所处于的客户机的主机名
2021-05-22 11:36:23 254
原创 servlet 页面跳转
两种方式:以登入为例服务端跳转: request.getRequestDispatcher("success.html").forward(request, response);客户端跳转: response.sendRedirect("fail.html");客户端跳转地址会变化
2021-05-18 15:53:09 105
原创 Java 7-2 List的使用 (15分)
本题练习列表的使用。定义Person类定义私有属性String name,int age,使用Eclipse生成每个属性setter 、getter,有参Person(String name,int age) 、无参 构造方法,toString方法。定义Main类,在main方法中定义List list = new ArrayList();用键盘给变量n赋值生成n个Person对象并添加到列表中,该Person的name和age通过键盘给出循环列表,输出列表所有Person对象信息(调用toS
2020-11-19 17:17:27 1959
原创 Java 6-6 jmu-Java-05集合-List中指定元素的删除 (15分)
编写以下两个函数/*以空格(单个或多个)为分隔符,将line中的元素抽取出来,放入一个List*/public static List<String> convertStringToList(String line) /*在list中移除掉与str内容相同的元素*/public static void remove(List<String> list, String str)裁判测试程序:public class Main { /*covnertString
2020-11-19 16:56:42 1396 1
原创 Java 6-2 jmu-Java-07多线程-互斥访问 (15分)
定义Account类属性:private int balance方法:getter方法void deposit(int money) //存钱,在余额的基础上加上moneyvoid withdraw(int money) //取钱,在余额的基础上减去money注意:可能有多个线程通过deposit或withdraw方法同时存取Account对象的balance属性。class Account{ private int balance=0; public Account(int bal
2020-11-19 16:20:31 2558
原创 Java 多线程与泛型实验
本题要求主线程退出时,在main方法中所启动的线程t1也要自动结束。public class Main { public static void main(String[] args) { Thread t1=new Thread(new PrintTask()); t1.setDaemon(true); t1.start(); System.out.println(Thread.currentThread().getName() + " end"); }
2020-11-19 16:13:10 3229
原创 Java 7-1 编程题:选修课成绩统计问题-hebust (12分)
学生选修课成绩统计问题选修课格次成绩使用字母表示,规则为:A=5,B=4,C=3,D=2,E=1编写程序统计每个同学两门选修课的分数成绩输入格式:多个学生的格次成绩使用西文逗号分开,整理为一行;每个学生姓名在前面,格次成绩在后,之间均使用空格分开数据统计:将每个学生的两门课格次成绩,转换为分数成绩并求和输出格式:结果为一行,姓名在前总分在后,之间空格分开;不同学生的记录之间使用西文逗号分开,注意最后的记录末尾没有逗号输入格式:多个学生的格次成绩使用西文逗号分开,整理为一行;每个学生姓名在前面,
2020-11-18 21:36:02 1531
原创 Java 6-3 jmu-Java-06异常-多种类型异常的捕获 (10分)
如果try块中的代码有可能抛出多种异常,且这些异常之间可能存在继承关系,那么在捕获异常的时候需要注意捕获顺序。补全下列代码,使得程序正常运行。裁判测试程序:public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String choice = sc.next(); try { if (c
2020-11-18 21:22:16 2379
原创 Java 6-2 检查物品是否为次品
工厂检查产品次品的设备,如果发现是次品就发出警告。编程模拟设备发现次品过程。编写一个产品类Product,有成员变量name和isDefect(是否次品),有get和set方法。编写一个Exception的子类DefectException,该子类message属性,有构造方法DefectException() 将"次品"赋值给message成员,有toShow()方法输出message的值编写一个Machine类,该类的方法checkProduct(Product product)当发现参数prod
2020-11-18 21:09:14 1034
原创 Java 6-1 系统常用标准异常类 (10分)
常用异常类NumberFormatException,IndexOutOfBoundsException、ArithmeticException等,本程序,建立一个Test_Exception类,里面有一个test方法,用于检测以上异常对象的发生并输出相应信息。 比如发生NumberFormatException异常,输出"数据格式异常";发生IndexOutOfBoundsException异常,输出"越界异常";发生ArithmeticException异常,输出"算术运算异常"。 ##。# Test_
2020-11-18 20:55:27 757
原创 Java 实验二——异常
public class Main { static void proc() throws IllegalAccessException { System.out.println("inside proc"); throw new IllegalAccessException("demo"); } public static void main(String[] args) { try { proc(); } catch (IllegalAccessE.
2020-11-18 20:45:36 521
原创 Java 6-4 浅拷贝与深拷贝问题
Java中的对象拷贝(Object Copy)指的是将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去。举例说明:比如,对象A和对象B都属于类S,具有属性a和b。那么对对象A进行拷贝操作赋值给对象B就是:B.a=A.a; B.b=A.b; ######浅拷贝(Shallow Copy):①对于数据类型是基本数据类型的成员变量,浅拷贝会直接进行值传递,也就是将该属性值复制一份给新的对象。因为是两份不同的数据,所以对其中一个对象的该成员变量值进行修改,不会影响另一个对象拷贝得到的数据。②对于数
2020-11-18 19:54:17 588
原创 Java 6-3 锥体体积计算
定义一个接口IgetArea,有方法double getArea(); 用于计算形状面积,定义另外一个接口IgetPerimeter,有方法 double getPerimeter();用于计算形状周长。接口IShape 有常量 PI=3.14,继承 接口IgetArea和IgetPerimeter定义一个直角三角形类(regular triangle)RTriangle类,实现接口IShape。两条直角边作为Triangle类的私有成员,类中包含参数为2条直角边的构造方法。定义一个圆形类Circle,
2020-11-18 19:46:50 3207 1
原创 Java 6-2 货车的装载量
卡车要装载一批货物,货物由三种商品组成:电视、计算机、洗衣机。卡车需要计算出整批货物的重量。 要求有一个ComputerWeight接口,该接口中有一个方法: public double computeWeight() ######有三个实现该接口的类:Television、Computer和WashMachine. 这三个类通过实现接口给出自重。这3个类都有属性weight,并通过构造方法初始化,其中Television类的computeWeight()方法,返回weight值;Computer
2020-11-18 19:27:18 12252 3
原创 Java 6-1 计算成绩 (15分)
体操比赛计算选手成绩的办法是去掉一个最高分和最低分后再计算平均分,而学校考察一个班级的某科目的考试情况时,是计算全班同学的平均成绩。体操Gymnastics类和学校School类都实现了ComputerAverage接口,但是实现的方式不同。接口方法定义:ComputerAverage接口有 如下方法:public double average(double x[]);其中 x 是用户传入的参数。 函数须返回平均值。裁判测试程序样例:import java.util.Scanner;publ
2020-11-18 12:15:46 6969 1
原创 Java 7-1 设计一个BankAccount类
设计一个BankAccount类,这个类包括:(1)一个int型的balance表时账户余额。(2)一个无参构造方法,将账户余额初始化为0。(3)一个带一个参数的构造方法,将账户余额初始化为该输入的参数。(4)一个getBlance()方法,返回账户余额。(5)一个withdraw()方法:带一个amount参数,并从账户余额中提取amount指定的款额。(6)一个deposit()方法:带一个amount参数,并将amount指定的款额存储到该银行账户上。设计一个Main类进行测试,分别输入
2020-11-17 22:24:15 5571
原创 Java 6-3 重写父类方法equals (20分)
在类Student中重写Object类的equals方法。使Student对象学号(id)相同时判定为同一对象。函数接口定义:在类Student中重写Object类的equals方法。使Student对象学号(id)相同时判定为同一对象。裁判测试程序样例:import java.util.Scanner;class Student { int id; String name; int age; public Student(int id, Strin
2020-11-17 22:13:20 5547 3
原创 2020-11-17
阅读测试程序,设计一个Book类。函数接口定义:class Book{}该类有 四个私有属性 分别是 书籍名称、 价格、 作者、 出版年份,以及相应的set 与get方法;该类有一个含有四个参数的构造方法,这四个参数依次是书籍名称、 价格、 作者、 出版年份 。裁判测试程序样例:import java.util.*;public class Main { public static void main(String[] args) { List <Book>b
2020-11-17 22:00:06 178 2
原创 Java 6-1 设计一个矩形类Rectangle (20分)
设计一个名为Rectangle的类表示矩形。这个类包括: 两个名为width和height的double型数据域,它们分别表示矩形的宽和高。width和height的默认值都为1.一个无参构造方法。一个为width和height指定值的矩形构造方法。一个名为getArea()的方法返回这个矩形的面积。一个名为getPerimeter()的方法返回这个矩形的周长。类名为:Rectangle裁判测试程序样例:import java.util.Scanner;/* 你的代码将被嵌入到这里 *
2020-11-17 21:19:56 17006 1
原创 Java 类与对象 题目
题目要求:1.使用this调用已有的有参构造函数,width与length分别为5和6。2.为Rectangle类覆盖toString。按照width=实际宽度值,length=实际长度值的格式输出public Rectangle(){ this.width=5;this.length=6; }public Rectangle(int width, int length) { this.width = width; this.length = length
2020-11-17 20:32:13 5444 2
原创 Java 6-1 人口统计
本题运行时要求键盘输入10个人员的信息(每一个人信息包括:姓名,性别,年龄,民族),要求同学实现一个函数,统计民族是“汉族”的人数。函数接口定义:public static int numofHan(String data[])其中 data[] 是传入的参数。 data[]中的每一个元素都是一个完整的人员信息字符串,该字符串由“姓名,性别,年龄,民族”,各项之间用英文半角的逗号分隔。函数须返回 值是汉族的人数。裁判测试程序样例:import java.util.Scanner;public
2020-11-17 20:28:22 2163
原创 Java 输入一行字符,请分别统计出英文字母、数字、空格和其他字符个数
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String str=sc.nextLine(); char x[]=str.toCharArray();//toCharArray方法,把输入的字符串转换为字符数组 int a=0
2020-11-17 20:11:32 6498 2
原创 数据结构 c语言 旅游规划
7-3 旅游规划 (25分)有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公路的条数;S是出发地的城市编号;D是目的地的城市编号。随后的M行中,每行给出一条高速公路的信息,分别是:城市1、城
2020-06-15 22:34:27 2051
原创 数据结构 c语言 邻接表存储图的广度优先遍历
试实现邻接表存储图的广度优先遍历。函数接口定义:void BFS ( LGraph Graph, Vertex S, void (*Visit)(Vertex) );其中LGraph是邻接表存储的图,定义如下:/* 邻接点的定义 */typedef struct AdjVNode *PtrToAdjVNode; struct AdjVNode{ Vertex AdjV; /* 邻接点下标 */ PtrToAdjVNode Next; /* 指向下一个邻接点的指针
2020-06-10 14:48:35 1296
原创 数据结构 c语言 图的深度遍历-邻接矩阵实现
本题要求实现邻接矩阵存储图的深度优先遍历。函数接口定义:void DFS(MGraph G,Vertex v);其中MGraph是邻接矩阵存储的图,定义如下:#define MaxVertexNum 10 /*定义最大顶点数*/typedef int Vertex;/* 用顶点下标表示顶点,为整型 */typedef struct{ int arcs[MaxVertexNum][MaxVertexNum]; /*邻接矩阵*/ int vexnum,arcnum; /*图中的顶点数v
2020-06-09 23:17:36 1632 1
原创 数据结构 c语言 邻接矩阵存储图的深度优先遍历
试实现邻接矩阵存储图的深度优先遍历。函数接口定义:void DFS( MGraph Graph, Vertex V, void (*Visit)(Vertex) );其中MGraph是邻接矩阵存储的图,定义如下:typedef struct GNode *PtrToGNode;struct GNode{ int Nv; /* 顶点数 */ int Ne; /* 边数 */ WeightType G[MaxVertexNum][MaxVertexNum]; /* 邻
2020-06-09 23:13:39 1568
原创 数据结构 c语言 求采用邻接矩阵作为存储结构的有向图各顶点的出度
本题要求实现一个函数,输出有向图每个顶点的数据元素的值,以及每个顶点的出度的值。函数接口定义:函数接口为:void outdegree(MGraph G);G为采用邻接矩阵作为存储结构的有向图。裁判测试程序样例:#include <stdio.h>#define MVNum 100 //最大顶点数 typedef struct{ char vexs[MVNum]; //存放顶点的一维数组 int arcs[MVNu
2020-06-09 23:04:59 8710
原创 数据结构 彩虹瓶
彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里。假设彩虹瓶里要按顺序装 N 种颜色的小球(不妨将顺序就编号为 1 到 N)。现在工厂里有每种颜色的小球各一箱,工人需要一箱一箱地将小球从工厂里搬到装填场地。如果搬来的这箱小球正好是可以装填的颜色,就直接拆箱装填;如果不是,就把箱子先码放在一个临时货架上,码放的方法就是一箱一箱堆上去。当一种颜色装填完以后,先看看货架顶端的一箱是不是下一个要装填的颜色,如果是就取下来装填,否则去工厂里再搬一
2020-05-16 22:14:15 762 1
原创 数据结构 表达式求值_1
在一个表达式中,只有“(”,“)”,“0-9”,“+”,“-”,“*”,“/”,“^”,请求出表达式的值。(“/”用整数除法)。输入格式:共1 行,为一个算式。 (算式长度<=30 其中所有数据在 0~2^31-1的范围内)。输出格式:共一行,为表达式的值。输入样例:在这里给出一组输入。例如:1+(3+2)(7^2+69)/(2)输出样例:在这里给出相应的输出。例如:258我的答案#include<stdio.h>#include<string.h>
2020-05-16 09:30:04 2920 1
原创 数据结构 十进制转二进制(顺序栈设计和应用)
设计一个顺序栈,并利用该顺序栈将给定的十进制整整数转换为二进制并输出。函数接口定义:#define MaxSize 100 /* 栈最大容量 */int top; /* 栈顶指针 */int mystack[MaxSize]; /* 顺序栈 *//*判栈是否为空,空返回true,非空返回false */bool isEmpty();/* 元素x入栈 */void Push(int x);/* 取栈顶元素 */int getTop();/* 删除栈顶元素 */void Pop
2020-05-16 09:28:59 13578 3
原创 数据结构 c语言 列车厢调度
1 ====== <--移动方向 / 3 ===== \ 2 ====== -->移动方向 大家或许在某些数据结构教材上见到过“列车厢调度问题”(当然没见过也不要紧)。今天,我们就来实际操作一下列车厢的调度。对照上方的ASCII字符图,问题描述如下:有三条平行的列车轨道(1、2、3)以及1-3和2-3两段连接轨道。现有一列车厢停在1号轨道上,请利用两条连接轨道以及3号轨道,将车厢按照要求的顺序转移到2号轨道。规则...
2020-05-14 10:10:21 3110
原创 数据结构 括号匹配 链式存储结构实现
给定一串字符,不超过100个字符,可能包括括号、数字、字母、标点符号、空格,编程检查这一串字符中的( ) ,[ ],{ }是否匹配。输入格式:输入在一行中给出一行字符串,不超过100个字符,可能包括括号、数字、字母、标点符号、空格。输出格式:如果括号配对,输出yes,否则输出no。我的答案#include <stdio.h>#include <stdbool.h&g...
2020-05-07 11:24:52 294
原创 数据结构 堆栈操作合法性
假设以S和X分别表示入栈和出栈操作。如果根据一个仅由S和X构成的序列,对一个空堆栈进行操作,相应操作均可行(如没有出现删除时栈空)且最后状态也是栈空,则称该序列是合法的堆栈操作序列。请编写程序,输入S和X序列,判断该序列是否合法。输入格式:输入第一行给出两个正整数N和M,其中N是待测序列的个数,M(≤50)是堆栈的最大容量。随后N行,每行中给出一个仅由S和X构成的序列。序列保证不为空,且长度不...
2020-05-06 22:52:54 1269
原创 另类堆栈
在栈的顺序存储实现中,另有一种方法是将Top定义为栈顶的上一个位置。请编写程序实现这种定义下堆栈的入栈、出栈操作。如何判断堆栈为空或者满?函数接口定义:bool Push( Stack S, ElementType X );ElementType Pop( Stack S );其中Stack结构定义如下:typedef int Position;typedef struct SNod...
2020-05-06 20:39:38 662
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人