Java技术er集合啦!大家可分享关于Java技术知识,包括但不限于微服务,分布式等前沿技术,快来沉淀自己的技术,一起写出未来吧!
你可以从以下几个方面着手(不强制),或者根据自己对话题主题的理解进行创作,参考如下:
提醒:在发布作品前请把不用的内容删掉
引言
提示:本目录下,介绍相关的技术,简单的进行讲述,从而更清晰的让读者认识本篇博文的技术分享主题。
jQuery事件方法
live()
语法
$(selector).live(event,data,function) event 必需。规定添加到元素的一个或多个事件。
由空格分隔多个事件值。必须是有效的事件。
data 可选。规定传递到该函数的额外数据。function 必需。规定当事件发生时运行的函数。
例子: $(“button”).live(“click”,function(){
}); live() 方法在 jQuery 版本 1.7 中被废弃,在版本 1.9 中被移除。请使用 on() 方法代替
数据库设计规范
1.表名一般以【模块名称_具体表名】来实现,同一个模块的前缀是一样的。(Oracle大小写敏感,在SQL中可以不用"_",因为可以用大小写一起的写法。这也是可以的)
2.表名称不应该取得太长(一般不超过三个英文单词,不推荐使用中文拼音,总的长度不要超过30个字符)。表名使用英文的原因,有些项目有英文版的需要,或者这个项目是给外国做的时候,使用英文是基本的要求,应该说这是一个习惯问题,多学一点英文也不是坏事
3.不使用tab或tb作为表前缀(本来就是一个表,为什么还要说明)。
4.一些作为多对多连接的表,可以使用两个表的前缀作为表名:如:用户登录表User_Login,用户分组表User_GroupInfo,这两个表建立多对多关系的表名为:User_Group_Relation(关系统一用Relation)。注意一点,主键在做其他表的外键时,或者在被其他表引用时,字段说明和字段名尽量保持一致,比如发帖表BBS_Topic里的用户字段写成UI_ID,这样跟用户信息表User_Info的主键UI_ID保持一致,看起来舒服,对应关系很明确,也不容易错,前后不一致时容易令人费解。
5.当系统中有一些少量的,重复出现的值时,使用字典表来节约存储空间和优化查询。如地区、系统中用户类型的代号等。这类值不会在程序的运行期变化,但是需要存储在数据库中。一般数据库中,都有一个数据字典表,用来保存系统所用到的基础数据,大型的字段表如省份城市区域的字典表,统一以Dictionary_作为前缀。
6. 与字段有关,默认的一些特殊字段, 很多表中,
比如一些业务处理表中,除了添加生成的自动编号ID(一般作为主键用),该记录创建的时间CreateDate(创建时间),该记录的创建人CreatBy(注意这里,没UI_ID(用户信息表User_Info的主键UI_ID),因为还有修改人),最后修改人LastEditBy,最后修改时间LastEditDate。(这些可以直接使用中文字符,而不使用编码,提高查询的效率)
同时有的时候需要注意,删除的时候并不真的删除该记录,而是添加一个标识位,比如XX_DeleteStaus删除状态。1是有效的,0则是无效的。
7.在命名表时,用单数形式表示名称。例如,使用 Employee,而不是 Employees。
8.数据库中应建立这样一个表,就是数据库本身的字段信息,表的说明,也就是数据库设计文档的一个表,方便查询使用,有什么不明的可以直接从数据库查询,数据库文档丢失,注释丢失,都可以重新起作用。
9.每个表都应该有一个主键,这个主键最好是数字,而且是递增的,有很多表的主键用32位字符编码,这样做的目的更多的是从安全考虑的。因为字符多时索引时效率低,而使用自增列也不是很少,比如添加主表和从表操作时,主表的主键是从表的外键,这个时候还有取返回值,然后再添加,不可以同时添加。主键可以用自定义的规则,大部分用MAX(ID)的做法,也可以自定义一个序列表,有点像序列,或者用时间的年月日秒具体到毫秒。关于列的命名,建议对数据类型也做一些规范,因为很容易确定,只有四种主要类型:数字,字符,时间,逻辑值,这些在类型上和长度上都可以定好规范,统一起来。
10.操作日志表,登录日志表,这是数据库中必备的两个表,这个记录也需要做进一步的保存。这个有两种情形,一是具体到单个字段的操作日志,二是整个表的操作日志。
spring开发步骤
1、导入包
5.0.5.RELEASE
org.springframework
spring-context
${spring.version}
2、编写接口、实现类
3、创建applicationContext.xml(习惯命名)
----》在resources路径
4、在配置文件中进行配置
延申:反射默认情况下时无参构造方法去创建的
5、创建ApplicationContexte对象getBean
测试
高内聚低耦合?封装补充?构造器作用补充?
1、高内聚低耦合
类的内部数据细节的操作由自己拉埃完成,不允许外部干涉。
仅对外部暴露少量的方法用于使用。
2、隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可维护性,可扩展性。
封装是一种设计的思想
3、构造器作用补充
1 (主要)创建对象:给对象进行初始化2 初始化对象的属性
public class PersonTest {
public static void main(String[] args) {
Person p1 = new Person("abcdejjj");
System.out.println(p1.name);
Person p2 = new Person();
}}
class Person{
String name; public Person(){
System.out.println("this is Person()");
}
public Person(String aabb){
name = aabb;
}
具备spring环境的测试头注解
具备spring环境的测试头注解 test
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringAmqpTest {
@Autowired
private RabbitTemplate rabbitTemp;
@Test
public void test() {
}
}
简洁版就是
@SpringBootTest
public class CollectionsTest {
@Test
public void test() {
System.out.println("===");
}
}
xml 规则
xml规则
1、名称可以含有字母、数字以及其他的字符
2、名称不能以数字或者标点符号开始
3、名称不能以字符"xml"(或者XML、Xml)开始
4、名称不能包括空格
- XML 文档必须包含在一个单一元素中
- XML 元素不能重叠,必须正确的嵌套
- 不能省去任何结束标记,或者说标记必须成对
- XML 元素是区分大小写的,也就是大小写敏感
- XML 文档中的属性有两个规则:
-属性必须有值
-那些值必须用引号括起,可以使用单引号,也可以使用双引号,但要始终保持一致
- 如果文档包含XML 声明,则它一定是第一个出现的东西
- XML注释和HTML注释的形式及用法相同
- 处理指令是为使用一段特殊代码而设计的标记,(待续)
- 实体(待续)
- 名称空间的存在是为了解决同一份文档中的同名不同义的命名冲突问题(和C++的namespace一样)。
为某一“元素”定义了namespace意味着该“元素”的所有“子元素”具有相同的namespace。请注意,名称空间(namespace)定义中的字符串仅仅是字符串,不一定非得是URL或者URI。只要你能保证唯一即可。
注:namespace的作用不只是解决命名冲突问题。它从逻辑上把XML Names划分为不同的namespace,不同namespace的XML Names遵循不同的Schema(这一点非常重要。)。用不同的schema对他们进行validating。
JavaScript:改变 HTML 内容案例
shanghai
<button type=“button” οnclick=“beijing()”>转变为北京
<button type=“button” οnclick=“shanghai()”>转变为上海
shanghai
转变为北京
转变为上海