小程序总结

package com.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.entity.Student;
import com.util.JDBC;

public class StudentDAO {
    static Connection conn=new JDBC().getConn();
    static PreparedStatement pstml=null;
    static ResultSet rs=null;

    public void menu(){
        System.out.println("********学生管理系统********");
        System.out.println("*1. 查询所有学生信息");
        System.out.println("*2. 录入学生信息");
        System.out.println("*3. 删除学生信息");
        System.out.println("*4. 查询单个学生信息");
        System.out.println("*5. 修改学生信息");
        System.out.println("*exit. 退出");
        System.out.println("*help. 帮助");
        System.out.println("****************************");
    }

    public int addStudent(Student s) throws SQLException{
        String sql="insert into student(name,sex,age,tel)" +
                "values(?,?,?,?)";
        pstml= conn.prepareStatement(sql);
        //pstml.setInt(1, s.getId());
        pstml.setString(1, s.getName());
        pstml.setString(2, s.getSex());
        pstml.setInt(3, s.getAge());
        pstml.setLong(4, s.getTel());
        return pstml.executeUpdate();
    }

    public int deleteStudent(int id) throws SQLException{
        String sql="delete * from student where id=?";
        pstml= conn.prepareStatement(sql);
        pstml.setInt(1, id);
        return pstml.executeUpdate();
    }

    public int change(Student s) throws SQLException{
        String sql="update student set name=?,sex=?,age=?,tel=? where id=?";
        pstml= conn.prepareStatement(sql);
        pstml.setString(1, s.getName());
        pstml.setString(2, s.getSex());
        pstml.setInt(3, s.getAge());
        pstml.setLong(4, s.getTel());
        pstml.setInt(5, s.getId());
        return pstml.executeUpdate();
    }

    public Student studentFindById(int id) throws SQLException{
        String sql="select * from student where id=?";
        pstml= conn.prepareStatement(sql);
        pstml.setInt(1, id);
        rs=pstml.executeQuery();
        Student s = null;
        while(rs.next()){
            s=new Student();
            s.setId(rs.getInt("id"));
            s.setName(rs.getString("name"));
            s.setSex(rs.getString("sex"));
            s.setAge(rs.getInt("age"));
            s.setTel(rs.getLong("tel"));
        }
        return s;
    }

    public ArrayList<Student> studentFindAll() throws SQLException{
        ArrayList<Student> studentList=new ArrayList<Student>();
        String sql="select * from student";
        pstml= conn.prepareStatement(sql);
        rs=pstml.executeQuery();
        while(rs.next()){
            Student s=new Student();
            s.setId(rs.getInt("id"));
            s.setName(rs.getString("name"));
            s.setSex(rs.getString("sex"));
            s.setAge(rs.getInt("age"));
            s.setTel(rs.getLong("tel"));
            studentList.add(s);
        }
        return studentList;
    }

    public static void close() throws SQLException{
        if(conn!=null){
            conn.close();
        }else if(pstml!=null){
            pstml.close();
        }else if(rs!=null){
            rs.close();
        }
    }

}

package com.entity;

public class Student {
    private int id;
    private String name;
    private String sex;
    private int age;
    private long tel;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public Student() {
        super();
        // TODO Auto-generated constructor stub
    }
    public Student(int id, String name, String sex, int age, long tel) {
        super();
        this.id = id;
        this.name = name;
        this.sex = sex;
        this.age = age;
        this.tel = tel;
    }
    public Student( String name, String sex, int age, long tel) {
        super();
        this.name = name;
        this.sex = sex;
        this.age = age;
        this.tel = tel;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public long getTel() {
        return tel;
    }
    public void setTel(long tel) {
        this.tel = tel;
    }

    public String toString(){
        return "Student [id="+getId()+", name="+getName()+", age="+getAge()+", sex="+getSex()+", tel="+getTel()+"]";
    }

}

package com.test;

import java.util.List;
import java.util.Scanner;

import com.dao.StudentDAO;
import com.entity.Student;

public class StudentManager {

    public static void main(String[] args){
        StudentDAO studentDao = new StudentDAO();
        studentDao.menu();
        Scanner sc = new Scanner(System.in);
        while(true){
            try {
                System.out.print("请输入功能编号:");
                String option = sc.nextLine();
                switch(option){
                    case "1":
                        System.out.println("以下是学生的信息:");
                        List<Student> arr = studentDao.studentFindAll();
                        for(int i=0;i<arr.size();i++){
                            System.out.println(arr.get(i));
                        }
                        System.out.println("总计 "+arr.size()+" 个");
                        break;
                    case "2":
                        while(true){
                            //假设学生年龄在0~80之间
                            System.out.println("请输入学生信息【name#sex#age#tel】或者输入【break】返回上一级目录");
                            String stuStr = sc.nextLine();
                            if(stuStr.equals("break")){
                                break;
                            }
                            String[] stuArr = stuStr.split("#");
                            String name = stuArr[0];
                            String sex = stuArr[1];
                            int age = Integer.parseInt(stuArr[2]);
                            Long tel=Long.parseLong(stuArr[3]);
                            Student s=new Student(name,sex,age,tel);
                            if(
                                    name==null||name.equals("")||
                                    sex==null||sex.equals("")||
                                    (((sex.equals("男")||sex.equals("女"))==false)||
                                    age<=0||age>=80||
                                    ((tel>=10000000&&tel<100000000)||( tel>=10000000000l && tel<100000000000l))==false)
                                )
                            {
                                System.out.println("信息格式错误!注意:\n" +
                                        "1、学生姓名,性别,年龄,电话号码不能为空\n" +
                                        "2、性别只能为男和女\n" +
                                        "3、年龄在0~80之间\n" +
                                        "4、" +
                                        "5、tel为电话号码或者手机号码,必须是8位或者11位数字");
                                continue;
                            }else{
                                int i=studentDao.addStudent(s);
                                if(i>0){
                                    System.out.println("添加成功!");
                                }else{
                                    System.out.println("系统异常,信息添加失败!");
                                }
                            }

                        }

                        break;
                    case "3":
                        while(true){
                            System.out.println("请输入要删除学生的学号或者输入【break】返回上一级目录");
                            String idStr = sc.nextLine();
                            if(idStr.equals("break")){
                                break;//跳出当前循环,返回主菜单
                            }
                            int id = Integer.parseInt(idStr);
                            Student oldStu = studentDao.studentFindById(id);
                            if(oldStu == null){
                                System.out.println("您要删除的学生不存在!");
                                continue;
                            }
                            int i=studentDao.deleteStudent(id);
                            if(i>0){
                                System.out.println("添加成功!");
                            }else{
                                System.out.println("系统异常,信息添加失败!");
                            }
                        }
                        break;
                    case "4":
                        while(true){
                            System.out.println("请输入学号或者输入【break】返回上一级目录");
                            String idStr = sc.nextLine();
                            if(idStr.equals("break")){
                                break;
                            }
                            //1001#terry#12
                            int id = Integer.parseInt(idStr);
                            Student stu = studentDao.studentFindById(id);
                            System.out.println(stu==null?"sorry,not found!":stu);
                        }
                        break;
                    case "5"://修改
                        while(true){
                            System.out.println("请输入要修改学生的学号或者输入【break】返回上一级目录");
                            String idStr = sc.nextLine();
                            if(idStr.equals("break")){
                                break;//跳出当前循环,返回主菜单
                            }
                            int id = Integer.parseInt(idStr);
                            Student oldStu = studentDao.studentFindById(id);
                            if(oldStu == null){
                                System.out.println("您要修改的学生不存在!");
                                continue;
                            }
                            System.out.println("原有信息为:"+oldStu);
                            System.out.println("请输入学生信息【name#sex#age#tel】");
                            String stuStr = sc.nextLine();
                            if(stuStr.equals("break")){
                                break;
                            }
                            String[] stuArr = stuStr.split("#");
                            int stuId=id;
                            String name = stuArr[0];
                            String sex = stuArr[1];
                            int age = Integer.parseInt(stuArr[2]);
                            Long tel=Long.parseLong(stuArr[3]);
                            Student s=new Student(stuId,name,sex,age,tel);

                            if(
                                    name==null||name.equals("")||
                                    sex==null||sex.equals("")||
                                    (((sex.equals("男")||sex.equals("女"))==false)||
                                    age<=0||age>=80||
                                    ((tel>=10000000&&tel<100000000)||( tel>=10000000000l && tel<100000000000l))==false)
                                )
                            {
                                System.out.println("信息格式错误!注意:\n" +
                                        "1、学生姓名,性别,年龄,电话号码不能为空\n" +
                                        "2、性别只能为男和女\n" +
                                        "3、年龄在0~80之间\n" +
                                        "4、" +
                                        "5、tel为电话号码或者手机号码,必须是8位或者11位数字");
                                continue;
                            }else{
                                int i=studentDao.change(s);
                                if(i>0){
                                    System.out.println("修改成功!");
                                }else{
                                    System.out.println("系统异常,信息添加失败!");
                                }
                            }
                        }
                        break;
                    case "exit":
                        System.out.println("bye bye,欢迎再次使用!");
                        System.exit(0);
                    case "help":
                        studentDao.menu();
                        break;
                    default:
                        System.out.println("不合法输入!");

                }
            } catch (Exception e) {
                System.out.println("输入出错!");
                e.printStackTrace();
                continue;
            }
        }
    }

}

package com.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class JDBC {
    private final String DRIVER="com.mysql.jdbc.Driver";
    private final String URL="jdbc:mysql://localhost:3306/test";
    String username = "root" ;
    String password = "root" ;
    Connection conn=null;

    public Connection getConn(){
        try{
            Class.forName(DRIVER);
           conn =DriverManager.getConnection(URL,username,password) ;
             }catch(SQLException se){
            System.out.println("数据库连接失败!");
            se.printStackTrace() ;
             } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        return conn;
    } 

}

1、switch可以使用穿透,就是多个选项同一个效果。

switch(c){
   case 1:
   case 2:
             System.out.println("nihao");
             break;
   default:
             System.out.println("byby");
}

2、接收到的数据类型是否对应类型可以不必使用Scanner的hasNextInt(),而使用try、catch异常处理判断类型接受的是否正确,因为错误的类型会抛出异常。

3、在实现多个同级模块的功能后返回初始的选择可以使用while循环镶嵌switch达到,返回的话只需要在需要的位置跳出switch循环就好了。

4、学会使用三目运算符简化代码。

时间: 2024-11-15 07:14:23

小程序总结的相关文章

微信小程序--图片相关问题合辑

图片上传相关文章 微信小程序多张图片上传功能 微信小程序开发(二)图片上传 微信小程序上传一或多张图片 微信小程序实现选择图片九宫格带预览 ETL:微信小程序之图片上传 微信小程序wx.previewImage预览图片 微信小程序之预览图片 小程序开发:上传图片到腾讯云 .NET开发微信小程序-上传图片到服务器 微信小程序本地图片处理--按屏幕尺寸插入图片 [微信小程序]上传图片到阿里云OSS Python Flask小程序文件(图片)上传技巧 小程序图片上传阿里OSS使用方法 微信小程序问题汇

微信小程序——豆瓣电影——(2):小程序运行部署

Demo 预览 演示视频(流量预警 2.64MB) GitHub Repo 地址 仓库地址:https://github.com/zce/weapp-demo 使用步骤 将仓库克隆到本地: bash $ git clone https://github.com/zce/weapp-demo.git weapp-douban --depth 1 $ cd weapp-douban 打开微信Web开放者工具(注意:必须是0.9.092300版本) 必须是0.9.092300版本,之前的版本不能保证正

微信小程序开发初探

一.关于微信小程序 1.1 小程序诞生的背景 张小龙说道: (1)一切以用户价值为依归→用户是微信的核心,所以微信中没有很多与客户无关的功能,比如QQ中的乱七八糟一系列东西. (2)让创造发挥价值→所有围绕微信的创造比如公众号都应该发挥其应有的价值. (3)用完即走的高效服务→这一点就厉害了word天,微信要打造一个以微信为中心的生态链,不以绑定用户为目标.比如生活中有一些不太常用的app,我们可能一年也使用不了几次,但是有时候就需要用到,微信就想要提供这样一个平台,让你可以在微信中使用这中所谓

【小程序】获取微信 自带的 收货地址获取和整理

1.wx.chooseAddress(OBJECT) if(wx.chooseAddress){ wx.chooseAddress({ success: function (res) { console.log(JSON.stringify(res)) }, fail: function(err){ console.log(JSON.stringify(err)) } }) }else{ console.log('当前微信版本不支持chooseAddress'); } 2.数据处理,仅供参考 /

微信小程序学习总结(2)------- 之for循环,绑定点击事件

最近公司有小程序的项目,本人有幸参与其中,一个项目做下来感觉受益匪浅,与大家做下分享,欢迎沟通交流互相学习. 先说一下此次项目本人体会较深的几个关键点:微信地图.用户静默授权.用户弹窗授权.微信充值等等. 言归正传,今天分享我遇到的关于wx:for循环绑定数据的一个tips:  1. 想必大家的都知道wx:for,如下就不用我啰嗦了: <view class="myNew" wx:for="{{list}}">{{item.title}}<view

微信小程序之使用本地接口开发

本文主要讲解如何使用本地接口进行开发,很多人都会遇到这个问题,特别是小程序上线后. 一.解决思路 在小程序开发工具设置网络代理,然后再通过Charles设置代理,将https域名转为本地接口进行访问. 以下示例的环境为win7 + 老版本的微信开发工具 二.准备工作 1.配置https域名 为小程序配置request合法域名,在登录公众号平台去设置. 2.安装Charles 下载地址:https://www.charlesproxy.com/download/ 三.配置Charles 1.安装根

微信小程序------媒体组件(视频,音乐,图片)

今天主要是简单的讲一下小程序当中的媒体组件,媒体组件包括:视频,音乐,图片等. 先来看看效果图: 1:图片Image <!-- scaleToFill:不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 widthFix:宽度不变,高度自动变化,保持原图宽高比不变 aspectFill:保持纵横比缩放图片,只保证图片的短边能完全显示出来. 也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取. aspectFit: 保持纵横比缩放图片,使图片的长边能完全显示出来.

带你入门微信小程序

认识微信小程序 2016年1月9日,TX启动小程序研发,于2017年1月9日正式发布.不同于微信订阅号或公众号,微信小程序被赋予了应用程序的能力,他是一种无需安装即可使用的应用,它实现了应用“触手可及”的梦想,用户“扫一扫”或者“搜一搜”即可打开应用:体现了“用完就走”的理念,用户不再需要关心是否安装太多应用问题.应用将无处不在,随时随地可用,无需卸载. 微信小程序相关技术 微信小程序自定义了一套语言,称为WXML微信标记语言,它的使用方法类似于HTML语言.另外,微信小程序还定义了自己的样式语

WordPress版微信小程序2.2.0版发布

2017年8月12日WordPress版微信小程序2.2.0版通过了微信的审核正式发布,此版本的更新以完善功能为主.主要更新的功能是:站内链接,猜你喜欢,热点文章. WordPress版微信小程序开放源码地址:https://github.com/iamxjb/winxin-app-watch-life.net 了解程序的开发历程及开发技术,建议看看相关版本的更新文章: 1.用微信小程序连接WordPress网站 2.WordPress版微信小程序1.5版本发布 3.WordPress版微信小程

微信+WeTest:小程序云端测试系统上线

日前,微信新增小程序测试系统,可便于开发者检测小程序缺陷,评估小程序产品质量.在小程序发布之前,开发者可将小程序代码提交到测试系统,在不同型号的手机真机上运行,执行完毕后自动生成测试报告.小程序云端测试平台,由WeTest提供基础支持,下载"微信开发者工具"即可使用. 小程序测试报告示例:  一. 云真机测试 Beta 为了方便广大开发者检测小程序程序缺陷.评估小程序产品质量,微信提供了免费的云真机测试环境以及一整套测试方案.在小程序交付到真实用户手中使用之前,你可以将小程序分发到云真