-
2021-02-26 18:02:18
Java中类的命名规范?
java命名规范?
Camel-Case(Camel-Case)是编写计算机程序时的一组命名规则(惯例)。
程序员能够更轻松地与同行交流自己的代码,因此最好采用具有更好可读性的统一命名方法。例如:有些程序员喜欢所有小写字母,有些程序员喜欢使用下划线,因此,如果要编写一个我名字的变量,则他们常用的写法将是myname,my_name,MyName或myName。这种命名规则并不适合所有程序员阅读,使用驼峰式命名法表示可以提高程序的可读性。
驼峰命名法是当变量名称或函数名称是由一个或多个单词连接在一起的唯一标识单词时,第一个单词以小写字母开头;第二个单词的第一个字母大写字母或每个单词的首字母均使用大写字母,例如:myFirstName,myLastName,此类变量名看起来像骆驼峰一个接一个,因此得名。
Camel-Case一词来自Perl语言中常用的混合大小写格式,以及Larry Wall等人的畅销书Programming Perl(由O"Reilly出版)的封面图片这是骆驼。
骆驼式命名法的命名规则可以视为一种约定,没有绝对和强制性,以提高识别度和可读性。
Java中类的命名规范?
具体示例如下:以下
com.ics是平台软件包。stmacmbas是此项目的根软件包。
stmacmbas.base是此项目的开发基础软件包。
stmacmbas.commerce是商业软件包。
stmacmbas.example是一个示例包。
stmacmbas.industry是一个工业企业软件包。
stmacmbas.stma是国家局的软件包。
stmacmbas.util是一个工具包。
其次,文件名。
1.文件名由英文单词组成,每个单词的首字母大写,最好不要超过4个单词,例如:ShipOrder.java。
2. Java文件的文件名必须与程序中的公共类名相同。
3. Servlet文件必须以Servlet结尾,例如:AddCompanyServlet.java。
第三,类名:每个单词的首字母大写。同上
第四,变量名。
1.类变量的命名:变量的名称必须以小写字母开头,随后的单词以大写字母开头。
2.静态最终变量的命名:静态最终变量的名称应大写并表示完整含义。
3.使用有意义的名称命名变量:首先,以完整的英语单词或速记约定(不允许中文拼音)命名变量,例如:firstName,zipCode
4.使用复数形式命名Collection类变量。集合包括数组,向量等。命名时使用复数形式:客户,同学。
V.方法名称。
1.方法名称必须以小写字母开头,随后的单词以大写字母开头。
2.方法的名称应与方法的目的相关。
第六,参数名称。
1.参数命名:参数名称必须与变量命名约定一致。
2.方法参数:使用有意义的参数名称,并尽可能使用与要分配的字段相同的名称。
java的包命名规则 java的类命名规则 java的函数命名规则 java的注释规则 请求一个具体完整的例子,谢谢。
更多相关内容 -
java实体类代码生成器 带注释
2017-02-02 09:54:01java 实体类 代码生成器 带注释 -
将Json对象转化为Java实体类
2015-01-10 17:28:31将Json对象转化为Java实体类 请输入要创建的类名:(格式为:*.java) Student.java 请输入json对象: {id : 10, name : '小明', age : 18, score : 88.5, city : '北京', isgood : true} 创建java实体类成功! -
Java实体类之---enum枚举类型属性
2021-03-08 15:35:12今天在项目中发现了一个实体类中有枚举类型的属性,并且在声明的时候加上了@Enumerated(EnumType.STRING)的注解。 同事在查询的时候发现报了错误,于是就百度了一下这个注解的意义,发现这个是hibernate的一个枚举...今天在项目中发现了一个实体类中有枚举类型的属性,并且在声明的时候加上了
@Enumerated(EnumType.STRING)
的注解。
同事在查询的时候发现报了错误,于是就百度了一下这个注解的意义,发现这个是hibernate的一个枚举注解。
Error attempting to get column 'level' from result set. Cause: java.lang.IllegalArgumentException: No enum constant com.kylin.blitz.dao.enums.MemberLevel.5
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.result.ResultMapException:
@Enumerated(EnumType.STRING)
EnumType有两个属性,一个是STRING,一个是ORDINAL,当使用的是STRING的时候,数据库对应保存的是注解的名称
当注解使用的是ORDINAL的时候,数据库对应保存的是注解的值
在这里写下记录一下,使用枚举类当做实体类对应数据库的时候,可以使用hibernate的注解@Enumerate进行映射,具体数据库保存的是枚举的名称还是枚举的值,则根据注解里面的EnumType来决定,STRING保存的是名称,ORDINAL保存的是值。
-
Java中(entity)实体类的书写规范
2021-02-25 19:24:21所以快速写出规范的entity(实体类)是java开发中一项必不可少的技能。在项目中写实体类一般遵循下面的规范:1、根据你的设计,定义一组你需要的私有属性。2、根据这些属性,创建它们的setter和getter方法。(e...在日常的Java项目开发中,entity(实体类)是必不可少的,它们一般都有很多的属性,并有相应的setter和getter方法。entity(实体类)的作用一般是和数据表做映射。所以快速写出规范的entity(实体类)是java开发中一项必不可少的技能。
在项目中写实体类一般遵循下面的规范:
1、根据你的设计,定义一组你需要的私有属性。
2、根据这些属性,创建它们的setter和getter方法。(eclipse等集成开发软件可以自动生成。具体怎么生成?请自行百度。)
3、提供带参数的构造器和无参数的构造器。
4、重写父类中的eauals()方法和hashcode()方法。(如果需要涉及到两个对象之间的比较,这两个功能很重要。)
5、实现序列化并赋予其一个版本号。
下面是我写的一个实体类(entity)例子:具体的细节都用注释标注了。
class Student implements Serializable{
/**
* 版本号
*/
private static final long serialVersionUID = 1L;
//定义的私有属性
private int id;
private String name;
private int age;
private double score;
//无参数的构造器
public Student(){
}
//有参数的构造器
public Student(int id,String name,int age, double score){
this.id = id;
this.name = name;
this.age = age;
this.score = score;
}
//创建的setter和getter方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
//由于id对于学生这个类是唯一可以标识的,所以重写了父类中的id的hashCode()和equals()方法。
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + id;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Student other = (Student) obj;
if (id != other.id)
return false;
return true;
}
}
这样就写好了一个学生的实体类
-
Java实体类
2019-08-18 10:00:07实体类~博客概要
昨晚和几个搞技术的室友讨论问题,谈到了实体类,就问自己“实体类有啥作用?”、“实体类是干啥的?”、“什么是实体类?”…一直到入睡前,想了很多,从之前做过的项目出发,脑补了流程,终于在床上想的差不多了,然后…失眠了一小会儿,果然夜晚的时光最美妙= =早上醒来,看了会儿书,吃了早餐后,就赶紧来写博客啦~
代码栗子
要注意的是,博主在这里放置的代码是不完整的,仅供理解范例使用,如需要完整一点的代码,请参考博主以下博文内容:
【1】JDBC——增删查改
【2】JDBC——(从复杂到简单)连接使用数据库的多种实现方法
【3】面向百度实体类(User)
private int uid; private String username; private String password; @Override public String toString() { return "User{" + "uid=" + uid + ", username='" + username + '\'' + ", password='" + password + '\'' + '}'; } public User() { } public User(int uid, String username, String password) { this.uid = uid; this.username = username; this.password = password; } public User(String username, String password) { this.username = username; this.password = password; } public int getUid() { return uid; } public void setUid(int uid) { this.uid = uid; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }
数据持久层-实现(UserDaoImpl)
/** * 新增 * @param user * @return */ @Override public boolean doAddU(User user) { try { conn = db.getConn(); String sql = "insert into tb_ws_user values(null,?,?)"; System.out.print("请输入用户名称:"); String username = in.next(); System.out.print("请输入用户密码:"); String password = in.next(); User users = new User(username,password); Object[] params = {user.getUsername(), user.getPassword()}; int i = db.executeUpdate(sql, params); if (i > 0) { //新增成功 return true; } else { //新增失败 return false; } } catch (Exception e) { e.printStackTrace(); } finally { db.closeResource(rs, pstm, conn); } return false; } /** * id单查 * @param uid * @return */ @Override public void doFindByIdU(int uid) { try { conn = db.getConn(); String sql = "select * from tb_ws_user where uid=?"; System.out.print("请输入用户编号:"); int uid = in.nextInt(); Object[] params = {uid}; rs = db.executeQuery(sql, params); while (rs.next()) { System.out.println("*用户编号:" + rs.getInt(1) + ",\t*用户名:" + rs.getString(2) + ",\t*用户密码:" + rs.getString(3)); } } catch (Exception e) { e.printStackTrace(); } }
实体类
概念与作用
由上图可知,直观的来看,实体类就是一个定义了属性,拥有setter、getter、无参构造方法(基本必备)、toString方法、有参方法(看需求)的一个类。
由例图可知,实体类可以在数据传输过程中对数据进行封装,相当于一个“工具”、“容器”、“载体”,能存储、传输数据,能管理数据,使用方法对数据进行操作。
数据流程
使用经验
现在回想,在使用过程中,其实实体类和数据库-表是一一对应的:
数据库-表 使用实体类 一张表 一个类 一条数据、一行数据 一个对象 一行中的一列 一个属性 … … 所以得出以下几点经验:
- 实体类名,尽量和数据库中的表名一一对应
- 实体类中的属性对应数据库表中的字段,相关的命名最好也一一对应
- 实体类内方法主要有,setter、getter方法,用于设置、获取数据
- 实体类属性一般为private类型,方法为public类型
- 实体类应该有,无参、有参构造方法
总结
“回溯”这种原本以为已经用的“滚瓜烂熟”的技术点的时候,也还是能学到不少东西,基础还需要继续扎实…
-
Java中什么是实体类和实体类的作用
2021-02-28 18:08:43首先,直观的看:实体类就是一个拥有Set和Get方法的类。实体类通常总是和数据库之类的(所谓持久层数据)联系在一起。这种联系是借由框架(如Hibernate)来建立的。其次说定义(比较生涩难懂):实体类主要是作为数据管理... -
IDEA自动按模板生成Java实体类
2022-03-17 14:22:35IDEA-自动生成java的实体类详细_空无多有的博客-CSDN博客_自动生成实体类 实际应用及实现,参照了以上文章,感谢分享。 springboot 项目搭建完成后 实体类的编写如果手动编写会比较繁琐,便爬文,然后实操实现了... -
记java实体类属性名为全部为大写踩的坑(基础)
2021-03-12 22:02:581.今天后台使用实体类接收参数,然后有个参数发现明明前后都是对应的,但是那个属性偏偏的不到数据后面百度才知道(写前端太久java基础都给忘了,该补补了)spring默认的命名方式为,首字母转小写,连续大写字母都转成... -
Java代码实体类生成SQL语句(Java实体类转数据库)
2021-07-19 17:43:04有的时候把数据库删了,如果照着实体类重新创建数据库的话比较麻烦,可以使用这个工具,把代码复制到项目里面设置一下即可把Java代码中的实体类转换为SQL语句输出为一个文件,打开执行命令即可。 代码如下: ... -
Java实体类之间的相互转换
2020-08-04 15:03:56在pom.xml配置文件中添加依赖 <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId>...创建第一个实体类School public class School { pr -
如何实现Java的ArrayList经典实体类
2021-04-23 17:58:02ArrayList是Java集合框架中一个经典的实现类。他比起常用的数组而言,明显的优点在于,可以随意的添加和删除元素而不需考虑数组的大小。处于练手的目的,实现一个简单的ArrayList,并且把实现的过程在此记录。实现的... -
Java实体类转Map、Map转实体类
2019-10-29 19:40:381、创建entity(User.java) package com.jeff.entity; public class User { private String userName; private String password; private Integer age; public User() { super(); } public User(String... -
java 给实体类赋默认值通用方法
2021-02-26 10:10:35package ...import java.lang.reflect.Field;import java.lang.reflect.Modifier;import java.math.BigDecimal;import java.sql.Date;import java.sql.Timestamp;import java.util.ArrayList;imp... -
java 实体类 时间格式化
2020-07-24 15:49:45java 实体类 时间格式化 注解: @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date time; pattern:时区 timezone:时区 @Json... -
Java实体类中封装其他实体类并引用
2020-03-28 19:44:53在引用的时候有人会把二个表的数据全都封装在一个实体类中,然后在对这个实体类进行操作,但如果是三个表呢?四个表呢?还都封装在一个实体类吗?这样被封装的实体类的数据是不是太多了呢?而且也会照成层次不分,... -
把数据库表生成实体类(java)
2015-08-21 11:09:30生成的文件可用UE打开或在exlipse打开,如果使用词本打开显示格式不友好 -
java实体类怎么转换成json?
2021-02-27 11:18:11实例代码:public class JSONUtil {/*** 将json转化为实体POJO* @param jsonStr* @param obj* @return*/public static Object JSONToObj(String jsonStr,Class obj) {T t = null;try {ObjectMapper objectMapper = ... -
java实体类与ES字段对应
2019-08-19 10:07:15java实体类一般是驼峰命名 映射到数据库是下划线 数据库用logstash同步到ES上 ES字段也是下划线 那怎么实现 java实体类 与 ES字段同步呢? logstash中jdbc的配置修改 statement项的SQL语句用AS进行别名 例如 ... -
Java基础——Java实体类与Map集合互转
2019-05-28 20:49:36废话不说,直接上代码!留着用吧... ...import java.beans.BeanInfo; import java.beans.IntrospectionException; import java.beans.Introspector; import java.beans.PropertyDescriptor; import ja... -
Java实体类(entity)作用
2018-05-17 17:17:10对java实体类的众多理解:A .就是属性类,通常定义在model层里面 B. 一般的实体类对应一个数据表,其中的属性对应数据表中的字段。好处:1.对对象实体的封装,体现OO思想。2.属性可以对字段定义和状态进行判断和... -
Java实现两个实体类相同属性的复制/拷贝
2021-02-27 18:36:15在两个实体类里,有相同的属性,有不同的属性...实体类代码清单1:Neo4jNode.javapackage com.graph.domain;import lombok.Data;import java.util.HashMap;import java.util.Map;/*** @Author:-https://www.4spaces.... -
Java遍历实体类
2019-12-26 14:51:48public void reflect(Object obj) throws Exception{ Class cls = obj.getClass(); Field[] fields = cls.getDeclaredFields(); for(int i=0; i<fields.length; i++){ ... -
Java实体类日期转换
2019-10-24 20:14:22class Person{ @DateTimeFormat(pattern = “yyyy-MM-dd”) //前台传数据到后台 @JsonFormat(pattern = “yyyy-MM-dd”,timezone="GMT+8")// 后台传数据到前台 private Date birthday; //----------------------... -
json与java实体类相互转换
2020-05-11 14:21:26java实体类如下: ··· public class VersionInfo { String productname; String productversion; List features; List enhances; List compatibilitys; List others; //省略set get } ··· 创建json字符串用于... -
java 实体类相互转换赋值,代替get和set
2021-03-01 06:22:11import java.lang.reflect.Field;.../*** yangzhiwei* 2个实体类相互转换赋值()* 字段名的类型和名称必须完全相同才可以,继承的父类字段无法赋值* 代替set和get重复代码*/public class ReflectToBean ... -
java实体类为什么要写.toString()方法
2018-08-09 10:13:28java实体类重写.toString()方法... 笔者在做javaweb项目时候,使用SSM+maven+easyui,然后在写java实体类的时候,发现大家都要写tostring方法,那么为什么java实体类都要写.toString()方法?于是顺便在这里记录一下... -
java实体类及类属性判空
2021-03-01 13:36:32敲代码时判空是必须的,这里分享一下java实体类及类属性判空体会。 一、实体类判空: 1.1实体类判空 如果是读库返回实体类,我们直接判空即可,如下图 1.2如果是先定义了类就不能这样判空了,因为new 对象时已经分配... -
Java实体类中又包括List实体类>增删改查的代码编写
2020-10-21 17:11:50Java实体类:是指与数据库中相对应的表,成一一对应关系,实体类中的字段包括字段名和字段类型,往数据库中存的是字段值单个的。业务复杂的情况下,需要实体类中还要包含List<实体类>,举例来说,问题表中有... -
kotlin代替java实体类
2020-04-30 15:41:24KOTLIN实体类写法 kotlin是一种谷歌专用语言,可以与java混合使用,在2019-2020年期间,kotlin的使用用户越来越多,多数java大型项目开始向kotlin项目转变,其中,最常见的是java的实力类使用kotlin代替书写. 基本规则 ...