,,javaSE基础如何通俗的理解javaBean是什么

,,javaSE基础如何通俗的理解javaBean是什么

所谓java Bean就是java类,编译成一个文件,后缀为。班级。这是爪哇豆。很多初学者,包括当年的我自己,总是被这些专有名词搞得一头雾水。

:

目录

1.什么是爪哇豆?2.需求分析3。JavaBean设计去公司面试,对方一口一个控制器,一口一个服务和dao,搞得我很紧张。其实都是很简单的事情,只是我当时不知道而已。接触后才发现。不是Java类吗?

1. 什么是 Java Bean?

很多培训机构在讲java基础的时候,基本都是写这样的代码:

包com . spring MVC . bean;

公共类人员{

私有字符串名称;//名称

私有整数年龄;//年龄

私串性别;//性别

私弦爱好;//爱好

公共字符串getName() {

返回名称;

}

public void setName(字符串名){

this.name=name

}

公共整数getAge() {

回归年龄;

}

公共void存储(整数年龄){

this.age=年龄;

}

公共字符串getGender() {

返回性别;

}

public void set gender(String gender){

this.gender=性别;

}

公共字符串getHobby() {

回报爱好;

}

public void set hobby(String hobby){

this.hobby=爱好;

}

}

毫无疑问,这是一颗爪哇豆。

在很多教科书里,我们被告知现实中有分男女的人,这是一个阶层。然后,我们用java面向对象把人抽象成一个Java类3354person类。

没关系,但仅此而已。没有别的了。时间长了,我们这些初学者学java,写的都是人,车,房子,等等。继承的时候总会写这样的代码,老师也举了这样的例子。

包com . spring MVC . bean;

/**

*水果

*

*/

公共类水果{

私有字符串名称;//水果的名称

私人浮动价格;//价格

公共水果(字符串名称,浮动价格){

super();

this.name=name

this.price=价格;

}

//省略getters和setters

}

包com . spring MVC . bean;

/**

*苹果

*/

公开课苹果推广果{

私有字符串颜色;//颜色

公共苹果(字符串名称、浮动价格、字符串颜色){

超级(姓名、价格);

this.color=color

}

//省略getters和setters

}

是的,这些是爪哇咖啡豆。对于初学者来说,这些例子真的很好理解。但是,这种方式有一个缺点。很容易让人迷茫。也就是说这些例子我能看懂,但不知道学了有什么用。我看过很多培训机构的视频,大部分都这么说。这导致我完成了整个JavaSE,但我仍然不知道我能做什么?

我去商务面试的时候,人家一口一个专业词汇,我都不好意思。

你想想,这种代码我在企业是写不出来的。归根结底,这些例子并不实用。再比如,学校研究数据库的时候,肯定会举一个被引用过N次的例子,就是有一个学生表,上面有学生的姓名,性别,课程,成绩。那就来一个。

select * from t _ student

嗯,我明白,但是,然后呢?

然后呢?我们只负责让你入门,你的学费已经交了,去企业学吧!

嗯,说多了都是眼泪。我见过很多学员的简历都被包装过。结果一出来,他们连JSON是什么,ajax怎么用都不知道。让我们写一个多表查询甚至表查询。琢磨了半天,还是写不出来。

我个人主张实用主义。所以这一节就把JavaBean的基本概念扩展一点,看看从哪里可以学到这些东西,比如字符串,整数,数据库。

2. 需求分析

举个例子,就拿简单书来说,比如一个物品清单:

说实话,每一个数据都是一个对象。对象有各种属性。从图片中,我们至少可以得到这样的信息:

文章的属性:

1.放时间

2.文章标题

3.点击次数

4.评论数量

5.喜欢的数量

6.显示图片

当然要有文章的内容(因为是个例子,我先不写了)。这些属性不就是修饰符为private的Java类中的私有属性吗?这些是相应数据库表中的所谓字段。

你可能会说,是的,但是我为什么要写一个JavaBean来携带这些数据呢?我用HashMap的时候不是一样吗?

是的,某种程度上可以,但是用JavaBean的话更清楚。

你可能已经写了很长时间的代码,但是你并不清楚你到底为什么要定义JavaBean,尤其是在做JavaWeb开发的时候。Java的功能其实就是两句话:

控制数据的流向,收集前台的数据包,然后逐个插入数据库永久保存。

2用jdbc从数据库中取出数据,然后包装起来,最后传到首页公开展示。

JavaBean是一个中转载体。

不就是这么回事吗?作为码农,我们每天不都在做这些事情吗?这就是所谓的增删搜。

我们最多是根据业务需求,通过编写Java代码来做一些逻辑控制。直截了当地说:

不是说你想增加数据,你想增加就增加。

不是说你想删数据,你想删就删。

不是说你想改数据,想改就改。

不是你想查的数据,你想查就查。

查查权威,做个判断,放下你的爱。

不就是这么回事吗?

什么JavaBean,dao,事务管理,aspect,我觉得这些都是次要的,都是一些专业术语的积累。作为一个码农,我觉得首先要知道自己每天在做什么,然后根据需要学习相应的知识或者理论,给自己充电。

连本职工作都不做好,就跟风学大数据,然后学bootstrap和node.js我不是说多学点技术不好。反而我觉得还是要分清主次。比如你现在所在的公司根本不需要大数据,那你花那么多精力去学又如何?

实际上,如果你的网站每月访问量不到1000,那么你高并发,学习分布式好,你能做什么?

再说一个网站如果真的很大,最后其实是服务器,而不是技术。

当你真正需要用到大数据的时候,你可以再去学习。到那个时候,公司肯定会想办法,但是真的不可能。从外面招人也是非常有必要的。

但是,在达到那个水平之前,说白了,你的工资只是和你对当前岗位的适应能力挂钩。你不能说,我学过大数据,去老板办公室要求加薪吧。不现实,你说呢?

好了,回到正题,刚才我们从图片上得到了这么多字段:

1.放时间

2.文章标题

3.点击次数

4.评论数量

5.喜欢的数量

6.显示图片

其实可以分为必要场和辅助场。所谓必备字段,就是一篇文章必须具备的属性。

和发布时间、文章标题、文章内容一样,这些都是必须的字段。

辅助字段是需要设置的字段,以便于对本文的控制。举个例子,

这篇文章可以看吗?

这篇文章被删除了吗?

这篇文章应该排第一吗?

相应的,我们可以设置这些字段,

1.发布:0未发布1已发布。

2.删除:0未删除1已删除。

3.点击、评论和喜欢等领域可以用来产生热度。如果热度高,那就应该排在前面,被更多人看到。(这些字段也可视为主要字段)

对了,实际开发过程中,基本不使用delete语句,所有删除都是逻辑删除,也就是把某个字段(is_delete)从0改成1,表示已经删除了。这样做的好处是,如果将来要恢复这些数据,可以直接更改该字段的值。我查询数据的时候,只要在where条件中加一个is_delete=1,那么被删除的数据就查不出来了。

为什么要这么做?

比如游戏里丢了东西,怎么找回?如果直接删掉,那就真的GG了。只要数据还在,一切都好说。我不能让它展示出来。如果我想检索,可以直接检索。嗯,通常是这样做的。

3. JavaBean设计

接下来,让我们设计这个JavaBean。打开Eclipse,我以之前的springmvc案例为例。现在,创建一个新的包,名为bean,专门用来存储这些JavaBean,然后创建一个新的class —— Article(文章类)

公共类文章{

}

开始设计领域。

首先,我们知道这些数据最终会存储在数据库表中,所以我们肯定需要有一个id作为它的主键。让我们使用字符串,然后使用uuid主键来生成策略。

私有字符串id;//主键UUID

主键是这一段数据的身份证,是唯一的,不可复制的。

必填字段或主字段。

私人日期发布时间;//发布时间

私有字符串标题;//文章的标题

私有字符串pictureLine//图像链接地址

辅助字段:

私有整数hitNum//点击音量

私有整数commentNum//评论数量

私有整数loveNum//喜欢

私有整数已发布;//发布0未发布1已发布?

私有整数被删除;//要删除0吗?1已被删除。

最后,一般来说,我们还需要记录一些类似于日志的信息,比如这篇文章是什么时候创作的,创作时间可以记录吗?另外,是谁创造的?可以记录用户的id吗?还有,文章可以多次修改。那么,最后一次修改时间需要记录吗?

我们到此为止吧。JavaBean的设计需要根据具体的业务需求来确定。这里我只是举个例子。

私有字符串userId//用户ID

私人日期创建时间;//创建时间

私人日期更新时间;//上次更新时间

大概就是这样。最后,使用Eclipse的快捷键alt s,单击Generate Getters和Setters,选择所有字段,然后单击OK。

最后鼠标右键,source3354format,格式化它,一个JavaBean就做好了。

当你写完JavaBean,就差不多相当于设计了数据库表。我们写JavaBean的时候,属性一般都是用hump方法命名的,但是数据库表有一点不同,就是在hump里面,要把大写字母改成小写字母,然后加一个下划线。

例如

UserId,对应的数据库表字段名是user_id,一般是这样命名的。

在实际开发过程中,差不多是这样的:

前台页面(可能在表单中填写数据)——保存—— ajax,并将其传递给控制器层3354,以与JavaBean进行映射。将这些数据保存到JavaBean 3354中,进入服务层。这里对数据进行一些逻辑运算和判断。有歌曲为证:

3354最后进入Dao层,直接访问数据库,进行各种操作。

好了,这一节对JavaBean做一些简短的,呃,简要的介绍。在下一节中,我将更深入地讨论这个问题。总之,刚学Java的时候,不要被这些专业术语吓到。真的没有你想的那么难。

如果你总是想着复杂,那么你将永远看不到简单。直到有一天你发现所有的烦恼都只在你心里。

以上是javaSE foundation如何理解javaBean是什么的细节。更多关于javaSE对javabean的理解,请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: