本体映射java代码 java的映射
java中的映射是怎样实现的?
建议做法如下:
创新互联建站主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、自适应网站建设、程序开发、网站优化、微网站、小程序定制开发等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的成都网站建设、网站建设、网站设计、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体。
第一,写一个符合javaBean标准的实体类,类的属性名称和类型分别与数据库的字段对应,并加上无参构造方法和get、set方法;
第二,使用注解配置映射关系,用@Entity注解该类是一个实体类,用@Table(name = "表名")注解该实体类映射的表名,通过在每一个属性的get方法上添加@Column(name = "列名")注解该属性映射的列;
第三,配置主键,找出表主键映射的那个属性,用@Id在该属性的get方法上注解该属性为Id。(根据具体需要,可能还要做一些更详细的配置)
参考代码如下:
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import org.hibernate.annotations.Parameter;
/**
*
* 用户
*/
@Entity //说明该类是实体类
@Table(name = "USER")//说明该类映射的是表USER
public class TUser implements java.io.Serializable {
private String userID; // 用户id
private String userName; // 用户名称
private String loginName; // 登录名称
private String password; // 密码
private Integer status; // 状态
private java.util.Date lastLoginTime; // 上次登录时间
private java.util.Date regTime; // 注册时间
@Id//说明该属性映射的是表USER的主键
@Column(name = "UserID", unique = true, nullable = false)
//该属性映射的是表USER的UserId字段,非空且唯一
public String getUserID() {
return this.userID;
}
public void setUserID(String userID) {
this.userID = userID;
}
@Column(name = "UserName")
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
@Column(name = "LoginName")
public String getLoginName() {
return this.loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
@Column(name = "Password")
public String getPassword() {
return this.password;
}
public void setPassword(String password) {
this.password = password;
}
@Column(name = "Status")
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
@Column(name = "LastLoginTime")
public java.util.Date getLastLoginTime() {
return lastLoginTime;
}
public void setLastLoginTime(java.util.Date lastLoginTime) {
this.lastLoginTime = lastLoginTime;
}
@Column(name = "RegTime")
public java.util.Date getRegTime() {
return regTime;
}
public void setRegTime(java.util.Date regTime) {
this.regTime = regTime;
}
@Override
public int hashCode() {
int prime = 0;
prime += this.getUserID().hashCode();
return prime;
}
@Override
public boolean equals(Object obj) {
boolean isEquals = false;
if (obj != null this.getClass() == obj.getClass()) {
TUser clazz = (TUser) obj;
if (clazz.getUserID().equals(this.getUserID()))
isEquals = true;
return isEquals;
}
return isEquals;
}
}
如何在mybatis映射文件里面使用java方法
使用的是ognl表达式,struts招牌
在mybatis的映射xml文件调用java类的方法:
1.
SELECT *
FROM
EC_CORE_USER
WHERE
(user_name=#{userName} or mail =#{userName} or mobile_phone = '${@net.ytoec.framework.security.EncryptionDecryption@dSecret(userName)}') and user_password=#{userPassword}
入上面代码所示。此处应注意,方法必须为静态方法。
2.获取类里面的常量:
r.czmc='${@com.ytoxl.module.datahub.kernel.dataobject.EcSystemLog@THE_AUDIT}'
3.判断是否为null:
iftest="@org.apache.commons.lang.StringUtils@isNotBlank(province)"andjdo.province=#{province}/if
java 实体类映射 不能获得get set 方法
你代码里有好几个错误:
1.User和Test类是在一个文件中吗?如果在一个文件中,只能定义一个public类的
2.User类的class标识写错了,你写的是calss
3.User类中private int id后的;是中文,要用英文;
4.user.set要带参数,用user.set(1);
这是我修改后的代码,你参考下:
public class Test
{
// 一个主函数,相当于是程序的入口
public static void main(String[] args)
{
User user = new User();
user.setId(1); // 获取不了set方法
}
}
class User implements java.io.Serializable
{
private int id;
public Integer getId()
{
return this.id;
}
public void setId(Integer id)
{
this.id = id;
}
}
java两个实体对象有映射关系,则怎么用反射把一个对象的数据拿到,赋给另一个对象?
这个没什么复杂的,你的核心意思是需要对二个对象的实例进行copy动作,做法如下:
1、对第一个类进行反射获取属性的值
2、对第二个类进行反射设置属性的值(将1中的值设入,采用配置文件进行关系映射)
建议你看下java反射机制,不用太理解他的含义,了解怎么用就可以,百度一下“java反射代码”。
下面2个网站可以看看:
分享文章:本体映射java代码 java的映射
链接URL:http://abwzjs.com/article/docgesg.html