这种东西,对新手是很好的练习,建议自己去写
求最大的数,简单点的排序算法
int maxfor(int i=0 i<list.size()i++){
if(max<list.get(i).getAge()){
max=list.get(i).getAge()
}
}
System.out.println("年龄最大的是"+max)
public FoPage findAllOperationAgent(OperationAgentBaseEntity entity,int pageNum, int pageSize){
logger.info("查找空余实验室")
FoHQLQuery query = new FoHQLQuery()
String hql = "from OperationAgentBaseEntity a "
//查询条件
String whereSql = " where 1=1 "
//实验室名字或编号
if(entity.getAgentname()!=null&&!entity.getAgentname().trim().equals("")){
whereSql += " and a.agentname like :agentName"
query.setString("agentName", "%"+entity.getAgentname()+"%")
}
//显示条数
String countHql = "select count(*) " + hql+ whereSql query.setHQL(hql + whereSql + " order by a.agentname ")
query.setCountHQL(countHql )
query.setPageNum(pageNum)
query.setpageSize(pageSize)
return this.execFoPageQuery(query)
} public String delOperationAgentEntity(final String[] agentCode){
logger.info("删除当前已使用实验室")
String message = "delError"
try
{
message = (String)this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException {
Transaction tx = session.beginTransaction()
try {
for(int i=0agentCode!=null&&i<agentCode.lengthi++){
SQLQuery delAgentQuery = session.createSQLQuery("delete from operation_agent_base c where c.agentcode ='"+agentCode[i]+"'")
SQLQuery delTelQuery = session.createSQLQuery("delete from OPERATION_CUSTOMER_TELEPHONE c where c.customernum ='"+agentCode[i]+"'")
delAgentQuery.executeUpdate()
delTelQuery.executeUpdate()
}
tx.commit()
}catch(Exception e){
tx.rollback()
logger.error("删除\r\n"+e.toString())
e.printStackTrace()
throw new HibernateException(e)
}
return "delSuccess"
}
}
)
}catch(Exception e)
{
logger.error("删除\r\n"+e.toString())
message = "delError"
}
return message
}
遇到相同的有提示就xietiaosql判断下 select count(*) from tbl where houseId = ? 如果返回值等于0 则无相同 反之则反
用java写的话,可以用List来实现学生管理系统:首先,管理系统是针对学生对象的,所以我们先把学生对象就写出来:
package bean
public class Student {
String name
String studentId
String sex
int grade
public Student(String name,String studentId,String sex,int grade){
this.name= name
this.studentId= studentId
this.sex = sex
this.grade = grade
}
public int getGrade(){
return grade
}
public String getName(){
return name
}
public String getSex(){
return sex
}
public void setGrade(int g){
this.grade = g
}
public String getStudentId(){
return studentId
}
}
这里面定义了一些得到当前学生对象数据的一些get方法,和成绩修改的set方法,代码很简单,就不做详细的解答。
就下来就是我们的正文了。
虽然我们暂时不用swing来做界面,但是总得要看的过去吧,所以,先做了一个比较简单的界面:
System.out.println("***************")
System.out.println("*欢迎来到学生管理系统 *")
System.out.println("*1:增加学生*")
System.out.println("*2:删除学生*")
System.out.println("*3:修改成绩*")
System.out.println("*4:查询成绩*")
System.out.println("***************")
System.out.println("您想选择的操作是:")
这里可以看到,我们的是用一个1234来选择项目,说以不得不讲一下Java如何获取到键盘所输入的数据---------Scanner ,要使用这个,首先需要import进来一个包:
例如这里:
import java.util.*
之后的两行代码搞定输入:
Scanner sc = new Scanner(System.in)
int choice = sc.nextInt()
接下来就是各个功能的实现:
package test
import java.util.*
import bean.Student
public class Manager {
static List<Student>StudentList = new LinkedList<Student>()
public static void main(String[] agrs){
select(StudentList)
}
private static void select(List<Student>StudentList ){
System.out.println("***************")
System.out.println("*欢迎来到学生管理系统 *")
System.out.println("*1:增加学生*")
System.out.println("*2:删除学生*")
System.out.println("*3:修改成绩*")
System.out.println("*4:查询成绩*")
System.out.println("***************")
System.out.println("您想选择的操作是:")
Scanner sc = new Scanner(System.in)
int choice = sc.nextInt()
switch(choice){
//增加学生
case 1:
System.out.print("请输入学生的姓名:")
Scanner Sname = new Scanner(System.in)
String name = Sname.nextLine()
System.out.print("请输入学生的性别:")
Scanner Ssex = new Scanner(System.in)
String sex = Ssex.nextLine()
System.out.print("请输入学生的学号:")
Scanner SId = new Scanner(System.in)
String studentId = SId.nextLine()
System.out.print("请输入学生的成绩:")
Scanner Sgrade = new Scanner(System.in)
int grade = Sgrade.nextInt()
StudentList.add(new Student(name,studentId,sex,grade))
System.out.println("添加成功!!!!!")
select(StudentList)
break
//删除学生成绩
case 2:
System.out.print("请告诉我需要删除学生的学号:")
Scanner Sid = new Scanner(System.in)
String SstudentId = Sid.nextLine()
boolean isfindDelete = false
for (int i = 0i <StudentList.size()i++) {
if(SstudentId.equals(StudentList.get(i).getStudentId())){
System.out.println("发现了该学生,正在删除...")
StudentList.remove(i)
System.out.println("删除成功!!!")
isfindDelete =true
}
}
if(!isfindDelete){
System.out.println("抱歉,没有找到")
}
select(StudentList)
break
//修改学生成绩
case 3:
System.out.print("请告诉我需要修改成绩学生的学号:")
Scanner GId = new Scanner(System.in)
String GstudentId = GId.nextLine()
boolean isfindChange = false
for (int j = 0j <StudentList.size()j++) {
if(GstudentId.equals(StudentList.get(j).getStudentId())){
System.out.println("发现了该学生,正在修改...")
System.out.println("学生原成绩为"+StudentList.get(j).getGrade())
System.out.print("请输入修改后学生的成绩:")
Scanner Ggrade = new Scanner(System.in)
int grade2 = Ggrade.nextInt()
StudentList.get(j).setGrade(grade2)
System.out.println("修改成功!!!")
isfindChange =true
}else{
}
}
if(!isfindChange){
System.out.println("抱歉,没有找到")
}
select(StudentList)
break
//查看学生成绩
case 4:
System.out.print("请告诉我需要查询学生的学号:")
Scanner CId = new Scanner(System.in)
String CstudentId = CId.nextLine()
boolean isfindData = false
for (int i = 0i <StudentList.size()i++) {
if(CstudentId.equals(StudentList.get(i).getStudentId())){
System.out.println("名字:"+StudentList.get(i).getName())
System.out.println("性别:"+StudentList.get(i).getSex())
System.out.println("学号:"+StudentList.get(i).getStudentId())
System.out.println("成绩:"+StudentList.get(i).getGrade())
isfindData = true
}
}
if(!isfindData){
System.out.println("抱歉,没有找到")
}
select(StudentList)
break
default:
System.out.println("您输入的数字有误,请重新输入:")
break
}
}
}
可以看见,我把所有的实现过程全部放在select();方法中了,这样可以避免我选择完了一个操作后不能继续其他操作。大部分的操作都是依靠for循环来遍历操作,方便快捷。