ibatis中可以写两条删除语句么,怎么写?
在映射文件中写
<delete id = "deleteUser" parameterClass="java.lang.String">
delete from 表名 where id=#value#
</delete>
注:id为标示Java项目开发 代码解释: sqlMap 中的字段含义
首先,通过你的这个文件的格式,我可以推断,你这是用的ibaits!
id就是一个别名,好让java的DAO层能调用到这个资源文件的这个SQL。
parameterClass这个就是表示,你传递进来的数据类型是什么。
resultClass就是表示,你这个查询语句,的返回类型是什么。
可以是一个基本数据类型,如string也可以是一个entityjava如何判断属性类型
你是想通过传入一个类模板然后判断出某个属性的类型?
利用反射可以做到
Field filed = className.getDeclaredField(parameter);
className为对应类模版,parameter为你的属性名称
filed.getType().toString(); 然后利用这个方法可以查询到对应属性类型
基本类型直接返回比如 int 直接返回int ,如果是包装或者引用 则直接
返回对应包类名 比如 class java.lang.Short
如果你要获取所有的 还是利用class对象
Field[] fields =className.getDeclaredFields();
循环遍历就可以了java个人信息查询和修改
进口java.awt。
*;
进口java.awt.event。
*;
进口javax.swing。
*;
进口. io . *;
进口java.util。
*;
类学生实现java.io.Serializable {
串号,姓名,专业,年级,波尔斯,性;
公共的学生(){ };
公共空间setNumber(弦号){ this.number =数量;}
公共字符串getNumber(){返回数量;}
公共空间setName(字符串名称){ this.name =名字;}
公共字符串getName(){返回名称;}
公共空间setSex(字符串性){ this.sex =性;}
公共字符串getSex(){返回性;}
公共空间setSpecialty(字符串专业){ this.specialty =专业;}
公共字符串getSpecialty(){返回专业;}
公共空间setGrade(字符串年级){ this.grade =年级;}
公共字符串getGrade(){返回年级;}
公共空间setBorth(字符串波尔斯){ this.borth =波尔斯;}
公共字符串getBorth(){返回波尔斯;}
}
公开课StudentManager延伸JFrame {
JLabel磅= new JLabel(“录入请先输入记录,查询,删除请先输入学号,修改是对查询”+
“内容改后的保存!”);
静态JTextField Jnumber、Jname Jspecialty、Jgrade Jborth;
静态JRadioButton男孩,女孩;
静态ButtonGroup组=零;
静态JButton登录、选择、删除、更新显示;
静态JPanel p1,p2,p3,p4,p5,p6、pv,ph值;
静态学生学生=零;
静态Hashtable Shashtable =零;
静态文件文件=零;
静态FileInputStream剧中=零;
静态ObjectInputStream inTwo =零;
静态FileOutputStream outOne =零;
静态ObjectOutputStream outTwo =零;
公共StudentManager(){
超级(“学生基本信息管理系统”);
Jnumber = new JTextField(10);
Jname = new JTextField(10);
Jspecialty = new JTextField(10);
Jgrade = new JTextField(10);
Jborth = new JTextField(10);
组= new ButtonGroup();
男孩= new JRadioButton(“男”,真正的);
女孩= new JRadioButton(“女”,假);
group.add(男孩);
group.add(女孩);
登录= new JButton(“录入”);
选择= new JButton(“查询”);
删除= new JButton(“删除”);
更新= new JButton(“修改”);
显示= new JButton(“显示”);
登录。
addActionListener(新InputAct());
选择。
addActionListener(新InquestAct());
更新。
addActionListener(新ModifyAct());
删除。
addActionListener(新DeleteAct());
秀。
addActionListener(新ShowAct());
update.setEnabled(假);
p1 = new JPanel();
p1。
(新JLabel添加(“学号:“,JLabel.CENTER));
p1.add(Jnumber);
p2 = new JPanel();
p2。
(新JLabel添加(“姓名:“,JLabel.CENTER));
p2.add(Jname);
p3 = new JPanel();
p3。
(新JLabel添加(“性别:“,JLabel.CENTER));
p3.add(男孩);
p3.add(女孩);
p4 = new JPanel();
p4。
(新JLabel添加(“专业:“,JLabel.CENTER));
p4.add(Jspecialty);
p5 = new JPanel();
p5。
(新JLabel添加(“年级:“,JLabel.CENTER));
p5.add(Jgrade);
p6 = new JPanel();
p6。
(新JLabel添加(“出生:“,JLabel.CENTER));
p6.add(Jborth);
pv = new JPanel();
pv。
setLayout(新GridLayout(6,1));
pv.add(p1);
pv.add(p2);
pv.add(p3);
pv.add(p4);
pv.add(p5);
pv.add(p6);
ph = new JPanel();
ph.add(登录);
ph.add(选择);
ph.add(更新);
ph.add(删除);
ph.add(显示);
=新文件(“学生信息. txt”);
Shashtable = new散列表();
如果(! file.exists()){
尝试{
FileOutputStream =新FileOutputStream(文件);
ObjectOutputStream objectOut = new ObjectOutputStream(出);
objectOut.writeObject(Shashtable);
objectOut.close();
out.close();
}
抓住(IOException e){ }
}
容器con = getContentPane();
con.setLayout(新BorderLayout());
con.add(磅,BorderLayout.NORTH);
BorderLayout.CENTER con.add(pv);
con.add(ph值、BorderLayout.SOUTH);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(100100600300);
setVisible(真正的);
}
公共静态void main(String[]args){新StudentManager();}
类InputAct实现ActionListener {
公共空间actionPerformed(ActionEvent e){
update.setEnabled(假);
字符串数量= " ";
数量= Jnumber.getText();
如果(number.length()> 0){
尝试{
剧中= new FileInputStream(文件);
inTwo = new ObjectInputStream(剧中);
Shashtable =(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
捕获异常(ee){ System.out.println(“创建散列表出现问题!”);}
如果(Shashtable.containsKey(数字)){
字符串警告= "该生信息已存在,请到修改页面修改!”;
JOptionPane.showMessageDialog(null,警告,“警告”,
JOptionPane.WARNING_MESSAGE);
} / / i
其他{
字符串m =“该生信息将被录入!”;
int ok = JOptionPane.showConfirmDialog(null,m,“确认”,
JOptionPane.YES_NO_OPTION JOptionPane.INFORMATION_MESSAGE);
如果(好吧= = JOptionPane.YES_OPTION){
字符串名称= Jname.getText();
字符串专业= Jspecialty.getText();
串级= Jgrade.getText();
字符串波尔斯= Jborth.getText();
字符串性=零;
如果(boy.isSelected()){性= boy.getText();}
其他{性= girl.getText();}
学生= new();
student.setNumber(数量);
student.setName(名称);
student.setSpecialty(专业);
student.setGrade(年级);
student.setBorth(波尔斯);
student.setSex(性);
尝试{
outOne = new FileOutputStream(文件);
outTwo = new ObjectOutputStream(outOne);
Shashtable.put(数量、学生);
outTwo.writeObject(Shashtable);
outTwo.close();
outOne.close();
}
捕获异常(ee){ System.out.println(“输出散列表出现问题!”);}
Jnumber.setText(空);
Jname.setText(空);
Jspecialty.setText(空);
Jgrade.setText(空);
Jborth.setText(空);
}
} / / else1结束
} / / i?f
其他{
字符串警告= "必须输入学号!”;
JOptionPane.showMessageDialog(null,警告,
“警告”,JOptionPane.WARNING_MESSAGE);
} / / else0结束
} / / actionPerformed结束
} / /结束类
类InquestAct实现ActionListener {
公共空间actionPerformed(ActionEvent e){
字符串数量= " ";
数量= Jnumber.getText();
如果(number.length()> 0){
尝试{
剧中= new FileInputStream(文件);
inTwo = new ObjectInputStream(剧中);
Shashtable =(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
捕获异常(ee){ System.out.println(“散列表有问题!”);}
如果(Shashtable.containsKey(数字)){
update.setEnabled(真正的);
学生stu =(学生)Shashtable.get(数量);
Jname.setText(stu.getName());
Jspecialty.setText(stu.getSpecialty());
Jgrade.setText(stu.getGrade());
Jborth.setText(stu.getBorth());
如果(stu.getSex().equals(男)){ boy.setSelected(真正);}
其他{ girl.setSelected(真正);}
}
其他{
update.setEnabled(假);
字符串警告= "该学号不存在!”;
JOptionPane.showMessageDialog(null,警告,
“警告”,JOptionPane.WARNING_MESSAGE);
}
}
其他{
update.setEnabled(假);
字符串警告= "必须输入学号!”;
JOptionPane.showMessageDialog(null,警告,
“警告”,JOptionPane.WARNING_MESSAGE);
}
}
}
类ModifyAct实现ActionListener {
公共空间actionPerformed(ActionEvent e){
字符串数量= Jnumber.getText();
字符串名称= Jname.getText();
字符串专业= Jspecialty.getText();
串级= Jgrade.getText();
字符串波尔斯= Jborth.getText();
字符串性=零;
如果(boy.isSelected()){性= boy.getText();}
其他{性= girl.getText();}
学生学生=新学生();
学生.setNumber(数量);
学生.setName(名称);
学生.setSpecialty(专业);
学生.setGrade(年级);
学生.setBorth(波尔斯);
学生.setSex(性);
尝试{
outOne = new FileOutputStream(文件);
outTwo = new ObjectOutputStream(outOne);
Shashtable。
把(数量、学生);
outTwo.writeObject(Shashtable);
outTwo.close();
outOne.close();
Jnumber.setText(空);
Jname.setText(空);
Jspecialty.setText(空);
Jgrade.setText(空);
Jborth.setText(空);
}
捕获异常(ee){
System.out.println(“录入修改出现异常!”);
update.setEnabled(假);
}
}
}
类DeleteAct实现ActionListener {
公共空间actionPerformed(ActionEvent e){
update.setEnabled(假);
字符串数量= Jnumber.getText();
如果(number.length()> 0){
尝试{
剧中= new FileInputStream(文件);
inTwo = new ObjectInputStream(剧中);
Shashtable =(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
捕获异常(ee){ }
如果(Shashtable.containsKey(数字)){
学生stu =(学生)Shashtable.get(数量);
Jname.setText(stu.getName());
Jspecialty.setText(stu.getSpecialty());
Jgrade.setText(stu.getGrade());
Jborth.setText(stu.getBorth());
如果(stu.getSex().equals(男)){ boy.setSelected(真正);}
其他{ girl.setSelected(真正);}
}
字符串m = "确定要删除该学生的记录吗?”;
int ok = JOptionPane.showConfirmDialog(null,m,“确认”,
JOptionPane.YES_NO_OPTION JOptionPane.QUESTION_MESSAGE);
如果(好吧= = JOptionPane.YES_OPTION){
Shashtable.remove(数量);
尝试{
outOne = new FileOutputStream(文件);
outTwo = new ObjectOutputStream(outOne);
outTwo.writeObject(Shashtable);
outTwo.close();
outOne.close();
Jnumber.setText(空);
Jname.setText(空);
Jspecialty.setText(空);
Jgrade.setText(空);
Jborth.setText(空);
}
捕获异常(ee){ System.out.println(ee);}
}
else if(好吧= = JOptionPane.NO_OPTION){
Jnumber.setText(空);
Jname.setText(空);
Jspecialty.setText(空);
Jgrade.setText(空);
Jborth.setText(空);
}
其他{
字符串警告= "该学号不存在!”;
JOptionPane.showMessageDialog(null,警告,
“警告”,JOptionPane.WARNING_MESSAGE);
}
}
其他{
字符串警告= "必须输入学号!”;
JOptionPane.showMessageDialog(null,警告,
“警告”,JOptionPane.WARNING_MESSAGE);
}
}
}
类ShowAct实现ActionListener {
公共空间actionPerformed(ActionEvent e){
新StudentShow(文件);
}
}
类StudentShow JDialog {延伸
Hashtable学生散列表=零;
JTextArea显示=零;
FileInputStream剧中=零;
ObjectInputStream inTwo =零;
文件文件=零;
公共StudentShow(文件文件){
超级(新JFrame(),“显示对话框”);
this.file =文件;
显示= new JTextArea(30);
尝试{
剧中= new FileInputStream(文件);
inTwo = new ObjectInputStream(剧中);
学生散列表=(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
捕获异常(ee){ }
如果学生散列表.isEmpty())显示.append(“目前还没有学生的信息记录! n”);
其他{
显示。
setText(“学号姓名性别专业年级出生 n”);
(列举运用=学生散列表. elements();enm.hasMoreElements();){
学生stu =(学生)enm.nextElement();
字符串性= " ";
如果(stu.getSex().equals(男))性= "男";
其他性= "女";
字符串str = stu.getNumber()+”、“+ stu.getName()+”、“+性别+”、“
+ stu.getSpecialty()+”、“+ stu.getGrade()+”、“+ stu.getBorth()+“ n”;
显示.append(str);
}
}
JScrollPane滚动= new JScrollPane(显示);
容器con = getContentPane();
con.add(“中心”,滚动);
con.validate();
setVisible(真正的);
setBounds(200200400300);
addWindowListener(新WindowAdapter(){
公共空间windowClosing(WindowEvent e){ setVisible(假);}
}
);
}
}
}javadoc是什么?
Javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。
也就是说,只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形式程序的开发文档了。
JBuilder提供了多项对Javadoc支持的功能,可以通过向导在工程窗格的树中创建Javadoc的节点,通过节点的菜单命名创建工程的Javadoc文档,可以通过诱导的方式录入Javadoc的标签,检验注释是否和源代码相匹配等。
本文,我们将讲解如何在源代码中用Javadoc标签写注释及如何创建Javadoc文档。
虽然软件工程中把详细设计作为软件项目的一个重要的阶段,但在实践中往往没有得到落实。
并不是这个阶段不重要,而是实施有很大的困难,因为软件需求是天生的易动症患者,好不容易详细设计出来后,需求已和当初的版本大相径庭,而花费巨大,精雕细琢的详细设计已变成昨日黄花了。
Javadoc注释由Javadoc标签和描述性文本组成,你可以为类、接口添加注释,也可为构造函数、值域、方法等类中的元素添加注释。
可以通过代码模板快速的录入Javadoc注释,你也可以选择通过Javadoc对话框以一种形象化的方式录入Javadoc注释。
此外,JBuilder还提供了各种Javadoc的辅助功能,如JavadocInsight诱导录入,冲突报告和更正,特殊的todo标签等。
虽然在Java文件中编写注释后,马上可以切换到内容窗格的Doc视图页代码中对应的Javadoc文档,但在Doc视图页中生成的文档仅是不完整的"范本"。
首先,没有导航树,其次没有生成通过@see或@link关联内容的链接。
所以你可以把Doc视图页中的Javadoc文档看成是Javadoc最终版本的预览。
本文中我们介绍了Javadoc的标签,讲解了如何在JBuilder编辑Javadoc注释,你应该尽量使用JavadocInsight、ClassInsight和ParameterInsight快速而正确地编写Javadoc注释。
此外你应该将常用的注释做成模板,方便快速录入。
JBuilder提供的注释冲突报告和恢复的功能可以使你轻松解决注释冲突的问题,免除了单调的手工调整操作。
JBuilder还允许你自定义Javadoc标签,以满足一些个性化的要求。
此外JBuilder自定义的todo标签可以使你随时随地在需要的地方作上标记,不至于遗漏未尽的工作。
hostyun新上了香港cloudie机房的香港原生IP的VPS,写的是默认接入200Mbps带宽(共享),基于KVM虚拟,纯SSD RAID10,三网直连,混合超售的CN2网络,商家对VPS的I/O有大致100MB/S的限制。由于是原生香港IP,所以这个VPS还是有一定的看头的,这里给大家弄个测评,数据仅供参考!9折优惠码:hostyun,循环优惠内存CPUSSD流量带宽价格购买1G1核10G3...
BuyVM测评,BuyVM怎么样?BuyVM好不好?BuyVM,2010年成立的国外老牌稳定商家,Frantech Solutions旗下,主要提供基于KVM的VPS服务器,数据中心有拉斯维加斯、纽约、卢森堡,付费可选强大的DDOS防护(月付3美金),特色是1Gbps不限流量,稳定商家,而且卢森堡不限版权。1G或以上内存可以安装Windows 2012 64bit,无需任何费用,所有型号包括免费的...
六一云 成立于2018年,归属于西安六一网络科技有限公司,是一家国内正规持有IDC ISP CDN IRCS电信经营许可证书的老牌商家。大陆持证公司受大陆各部门监管不好用支持退款退现,再也不怕被割韭菜了!主要业务有:国内高防云,美国高防云,美国cera大带宽,香港CTG,香港沙田CN2,海外站群服务,物理机,宿母鸡等,另外也诚招代理欢迎咨询。官网www.61cloud.net最新直销劲爆...
parameterclass为你推荐
视频技术视频监控技术的定义及特点自定义表情QQ自定义表情js后退javascript怎么禁用浏览器后退按钮assemblyinfoasp.net这几个文件是干什么的?印度尼西亚国家代码谁知道世界各国的国家电话代码?遗传算法实例求助fortran语言编写的混合遗传算法例子那位大哥大姐有?币众筹众筹是什么意思人脸识别解锁oppo人脸识别解锁电子邮件软件邮件客户端软件电子邮件软件电子邮件软件哪个好用
如何注册网站域名 科迈动态域名 lnmp virpus wdcp 免费cdn加速 windows2003iso 英文站群 ibox官网 新家坡 台湾谷歌 如何安装服务器系统 支持外链的相册 个人免费主页 空间登入 云服务器比较 阿里云邮箱个人版 fatcow 删除域名 sockscap教程 更多