IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

【Java】包的命名规则

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

命名规范

  • 包:所有单词的字母小写,如 org.nemo.demo
  • 常量:所有单词的字母大写,如 FLAG
  • 类:所有单词的首字母大写,如 TestJava
  • 属性:第一个单词的首字母小写,之后每个单词的首字母大写,如 studentName
  • 方法:第一个单词的首字母小写,之后每个单词的首字母大写,如 getInfo()

Java包的命名规则

  • util:对应英文utility(实用工具),一般存放工具类,就像java.lang.util包一样存放着各种各样的工具类方便你编程,这里你可以放自己写好的工具类为自己的程序提供方便。
  • business:一般存放业务类,处理程序业务的功能类就放在这里。
  • control:一般存放控制类,后台控制的一些类就放在这里,例如J2EE里的Servlet。
  • dao:对应英文Data Access Object,数据访问对象,一般存放与数据库(文本、Excel等)打交道的类,只关心数据库的增删改查。

    用于操作的封装。

  • vo:对应英文Value Object,值对象,一般存放实体(Model)。

    vo表示value object,主要实现数据的封装,常与数据库中一个表或视图相对应。
    该类的实现基本上是一个固定的模板,因此很多建模工具(如rose等)能够根据数据库中的表和视图自动生成该文件,此过程称为“反向工程”。

  • driver:一般存放驱动类,一般显示菜单,调用dao等包中的方法来驱动程序。一般拥有在其中使用方法的主方法。

SSM框架:

  • pojo:对应英文Plain Ordinary Java Object,简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。其中写普通类属性。
  • dao:(持久层)xml中写数据库操作
  • service:(业务层)其中写各种接口还有实现,方法有关操作的可以调用dao中的方法,或 自己写其他服务(如 分页)
  • controller:(表现层)其中设置请求映射地址,ModelAndView 方法中,将存入的参数进行处理,可使用service方法,用ModelAndView传入页面,对页面进行操作(增加数据、跳转页面等)

页面发送请求给控制器,控制器调用业务层处理逻辑,业务层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。

部分代码示例

vo包中

package vo;

public class Student 
{
    private String id;
    private String name;
    private String gender;
    private float java;
    private float english;
    private float math;
    private float totalScore;
    private float average;
}

driver包中:

package driver;

public class Driver 
{
    //存放目前集合中的学生信息
    public static List<Student> list=new ArrayList<Student>();

    public static void main(String args[])
    {
        int choice=menuChoice();
        while(choice!=7){
            switch(choice)
            {
                case 1:importFromExcel();break;
                case 2:importFromTxt();break;
                case 3:inputFromKeyboard();break;
                case 4:queryStudent();break;
                case 5:exportToExecel();break;
                case 6:exportToTxt();break;
                default:System.out.println("无效的选择");

            }
            choice=menuChoice();
        }
        System.out.println("程序成功退出");
        System.exit(0);

    }

    public static int menuChoice()
    {
        System.out.println("====学生成绩管理系统=====");
        System.out.println("1.  从excel中加载数据");
        System.out.println("2.  从文本文件加载数据");
        System.out.println("3.  键盘输入");
        System.out.println("4.  成绩查询");
        System.out.println("5.  输出到excel文件");
        System.out.println("6.  输出到纯文本文件");
        System.out.println("7.  退出");
        System.out.println("请输入选项:");
        Scanner scan=new Scanner(System.in);
        int choice=scan.nextInt();
        return choice;
    }
    public static void importFromExcel()
    {
        /*
         * 调用dao中的方法
         */
        StudentDAO dao=new StudentDAO();
        String fileName="c:/data/student.xls";
        List<Student> list1=dao.ReadFromExcel(fileName);    //dao中的方法
        list.addAll(list1); //将list1集合中的数据增加到list集合中
        System.out.println("成功从excel中导入"+list1.size()+"个学生");
    }
}

dao包中:

package dao;

public class StudentDAO 
{
    // 实现读学生文件,将读出的信息存放于student集合中
    public List<Student> ReadFromExcel(String fileName) 
    {

        List<Student> list = new ArrayList<Student>();
        File file = new File(fileName);
        try 
        {
            InputStream in = new FileInputStream(file);
            Workbook wb = Workbook.getWorkbook(in);
            Sheet s = wb.getSheet(0);
            for(int i = 1; i < s.getRows(); i++)   //第一行不要
            {
                Cell[] row = s.getRow(i);           
                Student student = new Student(row[0].getContents(), row[1].getContents(),   //填充数据
                        row[2].getContents(), Float.parseFloat(row[3].getContents()),
                        Float.parseFloat(row[4].getContents()), Float.parseFloat(row[5].getContents()));
                //由于读取的数据全部都是String 类型所以要转换成Float类型 
                student.setTotalScore(student.getEnglish()+student.getJava()+student.getMath());
                student.setAverage(student.getTotalScore()/3);
                list.add(student);                      
            }
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (BiffException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return list;
    }
}

文章永久链接:https://tech.souyunku.com/?p=20023


Warning: A non-numeric value encountered in /data/wangzhan/tech.souyunku.com.wp/wp-content/themes/dux/functions-theme.php on line 1154
赞(80) 打赏



未经允许不得转载:搜云库技术团队 » 【Java】包的命名规则

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码
IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

评论 抢沙发

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏


Fatal error: Uncaught Exception: Cache directory not writable. Comet Cache needs this directory please: `/data/wangzhan/tech.souyunku.com.wp/wp-content/cache/comet-cache/cache/https/tech-souyunku-com/index.q`. Set permissions to `755` or higher; `777` might be needed in some cases. in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php:367 Stack trace: #0 [internal function]: WebSharks\CometCache\Classes\AdvancedCache->outputBufferCallbackHandler() #1 /data/wangzhan/tech.souyunku.com.wp/wp-includes/functions.php(5109): ob_end_flush() #2 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(303): wp_ob_end_flush_all() #3 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #4 /data/wangzhan/tech.souyunku.com.wp/wp-includes/plugin.php(470): WP_Hook->do_action() #5 /data/wangzhan/tech.souyunku.com.wp/wp-includes/load.php(1097): do_action() #6 [internal function]: shutdown_action_hook() #7 {main} thrown in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php on line 367