上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 55 下一页
摘要: 特性 Struts1 Struts2 Action Struts1.x要求Action类要扩展自一个抽象基类。Struts1.x的一个共有的问题是面向抽象类编程而不是面向接口编程。 Struts2的Action类实现了一个Action接口,连同其他接口一起来实现可选择 和自定义的服务。Struts2 阅读全文
posted @ 2020-11-29 14:19 咔啡 阅读(79) 评论(0) 推荐(0)
摘要: Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现. 拦截器栈(Interceptor Stack)类似于过滤器链。拦截器栈就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,拦截器 阅读全文
posted @ 2020-11-29 14:16 咔啡 阅读(65) 评论(0) 推荐(0)
摘要: Struts 2.1 的隐式对象 (这些隐式对象都是Map类型) parameters 用于访问请求参数 request 用于访问HttpServletRequest的属性 session 用于访问HttpSession的属性 application 用于访问ServletContext的属性 at 阅读全文
posted @ 2020-11-29 14:15 咔啡 阅读(59) 评论(0) 推荐(0)
摘要: Hibernate是一个轻量级的持久层开源框架,它是连接Java应用程序和关系数据库的中间件,负责Java对象和关系数据之间的映射.Hibernate内部对JDBC API进行了封装,负责Java对象的持久化.因为它封装了所有的数据访问细节,使得业务逻辑层可以专注于实现业务逻辑. 它是一种优秀的OR 阅读全文
posted @ 2020-11-29 14:13 咔啡 阅读(104) 评论(0) 推荐(0)
摘要: ORM的全称是Object-Relational Mapping,即对象关系映射。ORM思想的提出来源于对象与关系之间相悖的特性。我们很难通过对象的继承与聚合关系来描述数据表中一对一、一对多以及多对多的关系。而面向对象思想中有关抽象与多态的原理,也无法通过关系数据库的SQL语句得以彰显。因此,我们需 阅读全文
posted @ 2020-11-29 14:11 咔啡 阅读(430) 评论(0) 推荐(0)
摘要: 已配置结果类型名 类 名 描 述 dispatcher org.apache.struts2.dispatcher.ServletDispatcherResult 默认结果类型,用来呈现JSP页面 chain com.opensymphony.xwork2.ActionChainResult 将ac 阅读全文
posted @ 2020-11-29 14:07 咔啡 阅读(46) 评论(0) 推荐(0)
摘要: <action name="updateDocument" class="org.fkjava.hrm.action.document.DocumentAction" method="updateDocument"> <interceptor-ref name="token"></intercept 阅读全文
posted @ 2020-11-29 14:05 咔啡 阅读(69) 评论(0) 推荐(0)
摘要: HQL功能很强大,适合各种情况,但是动态条件查询构造起来很不方便; Criteria 最适合动态查询,但不太适合统计查询,QBE还不够强大.只适合简单的查询; Native-SQL可以实现特定的数据库的SQL,但是可移植性并不好。 如大部分查询都是动态条件查询,首先criteria,甚至使用Hibe 阅读全文
posted @ 2020-11-29 14:04 咔啡 阅读(119) 评论(0) 推荐(0)
摘要: 体上,对于HIBERNATE性能调优的主要考虑点如下: l 数据库设计调整 l HQL优化 l API的正确使用(如根据不同的业务类型选用不同的集合及查询API) l 主配置参数(日志,查询缓存,fetch_size, batch_size等) l 映射文件优化(ID生成策略,二级缓存,延迟加载,关 阅读全文
posted @ 2020-11-29 14:03 咔啡 阅读(105) 评论(0) 推荐(0)
摘要: 瞬时态(Transient)、 持久态(Persistent)、脱管态(Detached)。处于持久态的对象也称为PO(Persistence Object),瞬时对象和脱管对象也称为VO(Value Object)。 瞬时态:没有持久化标示符,数据库中无对应记录。当执行save和persist方法 阅读全文
posted @ 2020-11-29 14:02 咔啡 阅读(83) 评论(0) 推荐(0)
摘要: Get会发送查询语句提取数据,而load方法当对象使用时才去数据库查询。如果未能发现符合条件的记录,get方法返回null,而load方法会抛出一个ObjectNotFoundException。Load方法可返回实体的代理类实例,而get方法永远直接返回实体类。load方法可以充分利用内部缓存和二 阅读全文
posted @ 2020-11-29 14:01 咔啡 阅读(74) 评论(0) 推荐(0)
摘要: Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和 Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。 Se 阅读全文
posted @ 2020-11-29 13:59 咔啡 阅读(98) 评论(0) 推荐(0)
摘要: AOP为Aspect Oriented Programming的缩写,意为:面向切面编程(也叫面向方面),可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。 AOP是目前软件开发中的一个热点,也是Spring框架中的一个重要内容。利用AOP可以对业务逻辑的 阅读全文
posted @ 2020-11-29 13:57 咔啡 阅读(297) 评论(0) 推荐(0)
摘要: Spring是一个轻量级的容器,非侵入性的框架.最重要的核心概念是IOC,并提供AOP概念的实现方式,提供对持久层,事务的支持,对当前流行的一些框架(Struts,Hibernate,MVC),Sping也提供了与它们的相整合的方案.使用Spring,我们能够减少类之间的依赖性和程序之间的耦合度,最 阅读全文
posted @ 2020-11-29 13:55 咔啡 阅读(143) 评论(0) 推荐(0)
摘要: 第一级缓存由Session实例维护,它是必选的,其中保持了Session当前所有关联实体的数据,也称为内部缓存。而第二级缓存则存在于SessionFactory层次,它是可选的。一级缓存只能为当前线程的会话缓存,无法给整个应用共享;二级缓存可为整个应用提供缓存支持。二级缓存可以开启查询缓存,而一级缓 阅读全文
posted @ 2020-11-29 13:53 咔啡 阅读(140) 评论(0) 推荐(0)
摘要: Required 如果当前存在一个事务,则加入当前事务。如果不存在任何事务,则创建一个新的事务。总之,要至少保证在一个事务中运行。PROPAGATION_REQUIRED通常作为默认的事务传播行为。propagtion RequiresNew 不管当前是否存在事务,都会创建新的事务。如果当前存在事务 阅读全文
posted @ 2020-11-29 13:51 咔啡 阅读(443) 评论(0) 推荐(0)
摘要: 将 auto.commit.offset 设为 false,然后在处理一批消息后 commitSync() 或者 异步提交 commitAsync() 即: ConsumerRecords<> records = consumer.poll(); for (ConsumerRecord<> reco 阅读全文
posted @ 2020-11-29 13:50 咔啡 阅读(189) 评论(0) 推荐(0)
摘要: request.required.acks 有三个值 0 1 -1(all) 0:生产者不会等待 broker 的 ack,这个延迟最低但是存储的保证最弱当 server 挂 掉的时候就会丢数据。 1:服务端会等待 ack 值 leader 副本确认接收到消息后发送 ack 但是如果 leader 阅读全文
posted @ 2020-11-29 13:48 咔啡 阅读(1368) 评论(0) 推荐(0)
摘要: 出现“活锁”的情况,是它持续的发送心跳,但是没有处理。为了预防消费者在 这种情况下一直持有分区,我们使用 max.poll.interval.ms 活跃检测机制。 在此 基础上,如果你调用的 poll 的频率大于最大间隔,则客户端将主动地离开组,以 便其他消费者接管该分区。 发生这种情况时,你会看到 阅读全文
posted @ 2020-11-29 13:47 咔啡 阅读(588) 评论(0) 推荐(0)
摘要: Kafka 分布式的单位是 partition,同一个 partition 用一个 write ahead log 组织, 所以可以保证 FIFO 的顺序。不同 partition 之间不能保证顺序。但是绝大多数用 户都可以通过 message key 来定义,因为同一个 key 的 message 阅读全文
posted @ 2020-11-29 13:32 咔啡 阅读(1353) 评论(0) 推荐(0)
摘要: Zookeeper 是一个开放源码的、高性能的协调服务,它用于 Kafka 的分布式应用。 Zookeeper 主要用于在集群中不同节点之间进行通信 在 Kafka 中,它被用于提交偏移量,因此如果节点在任何情况下都失败了,它都 可以从之前提交的偏移量中获取 除此之外,它还执行其他活动,如: lea 阅读全文
posted @ 2020-11-29 13:31 咔啡 阅读(893) 评论(0) 推荐(0)
摘要: 生产者在主题上发布消息: bin/kafka-console-producer.sh --broker-list 192.168.43.49:9092 --topic Hello-Kafka 注意这里的 IP 是 server.properties 中的 listeners 的配置。接下来每个新行就 阅读全文
posted @ 2020-11-29 13:29 咔啡 阅读(207) 评论(0) 推荐(0)
摘要: 消息持久化,当然前提是队列必须持久化 RabbitMQ 确保持久性消息能从服务器重启中恢复的方式是,将它们写入磁盘上 的一个持久化日志文件,当发布一条持久性消息到持久交换器上时,Rabbit 会在 消息提交到日志文件后才发送响应。 一旦消费者从持久队列中消费了一条持久化消息,RabbitMQ 会在持 阅读全文
posted @ 2020-11-29 13:28 咔啡 阅读(146) 评论(0) 推荐(0)
摘要: 在消息生产时,MQ 内部针对每条生产者发送的消息生成一个 inner-msg-id,作 为去重的依据(消息投递失败并重传),避免重复的消息进入队列; 在消息消费时,要求消息体中必须要有一个 bizId(对于同一业务全局唯一,如支 付 ID、订单 ID、帖子 ID 等)作为去重的依据,避免同一条消息被 阅读全文
posted @ 2020-11-29 13:27 咔啡 阅读(569) 评论(0) 推荐(0)
摘要: 若该队列至少有一个消费者订阅,消息将以循环(round-robin)的方式发送给消 费者。每条消息只会分发给一个订阅的消费者(前提是消费者能够正常处理消息 并进行确认)。 通过路由可实现多消费的功能 阅读全文
posted @ 2020-11-29 13:24 咔啡 阅读(269) 评论(0) 推荐(0)
摘要: 1、服务间异步通信 2、顺序消费 3、定时任务 4、请求削峰 阅读全文
posted @ 2020-11-29 13:23 咔啡 阅读(60) 评论(0) 推荐(0)
摘要: 考虑以下情况:我们有多个应用程序使用 Spring Cloud Config 读取属性,而 Spring Cloud Config 从 GIT 读取这些属性。 下面的例子中多个员工生产者模块从 Employee Config Module 获取 Eureka 注 册的财产。 第 468 页 共 48 阅读全文
posted @ 2020-11-29 13:22 咔啡 阅读(368) 评论(0) 推荐(0)
摘要: 使用 Spring Boot 开发分布式微服务时,我们面临以下问题 1、与分布式系统相关的复杂性-这种开销包括网络问题,延迟开销,带宽问题, 安全问题。 2、服务发现-服务发现工具管理群集中的流程和服务如何查找和互相交谈。它涉 及一个服务目录,在该目录中注册服务,然后能够查找并连接到该目录中的服务。 阅读全文
posted @ 2020-11-29 13:20 咔啡 阅读(482) 评论(0) 推荐(0)
摘要: Spring Boot 提供监视器端点以监控各个微服务的度量。这些端点对于获取有关应 用程序的信息(如它们是否已启动)以及它们的组件(如数据库等)是否正常运 行很有帮助。但是,使用监视器的一个主要缺点或困难是,我们必须单独打开应 用程序的知识点以了解其状态或健康状况。想象一下涉及 50 个应用程序的 阅读全文
posted @ 2020-11-29 13:16 咔啡 阅读(424) 评论(0) 推荐(0)
摘要: YAML 是一种人类可读的数据序列化语言。它通常用于配置文件。 与属性文件相比,如果我们想要在配置文件中添加复杂的属性,YAML 文件就更加 结构化,而且更少混淆。可以看出 YAML 具有分层配置数据。 阅读全文
posted @ 2020-11-29 13:13 咔啡 阅读(536) 评论(0) 推荐(0)
摘要: 对于集成 Spring Boot 和 ActiveMQ,我们使用依赖关系。 它只需要很少的配置,并且不需要样板代码。 阅读全文
posted @ 2020-11-29 13:12 咔啡 阅读(104) 评论(0) 推荐(0)
摘要: Spring JavaConfig 是 Spring 社区的产品,它提供了配置 Spring IoC 容器的纯 Java 方法。因此它有助于避免使用 XML 配置。使用 JavaConfig 的优点在于: 1、面向对象的配置。由于配置被定义为 JavaConfig 中的类,因此用户可以充分 利用 J 阅读全文
posted @ 2020-11-29 13:10 咔啡 阅读(350) 评论(0) 推荐(0)
摘要: 数据字典是属于’SYS’用户的,用户‘SYS’ 和 ’SYSEM’是由系统默认自动创建的 阅读全文
posted @ 2020-11-29 13:09 咔啡 阅读(110) 评论(0) 推荐(0)
摘要: alias la='ls -a' 阅读全文
posted @ 2020-11-29 13:07 咔啡 阅读(180) 评论(0) 推荐(0)
摘要: netstat 阅读全文
posted @ 2020-11-29 12:36 咔啡 阅读(183) 评论(0) 推荐(0)
摘要: whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...] 补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性 应属于原始代码,二进制文件,或是帮助文件。 -b 只查找二进制文件。 -B <目录> 只在设置的目录 阅读全文
posted @ 2020-11-29 12:34 咔啡 阅读(343) 评论(0) 推荐(0)
摘要: 首先,创建一个简单的 insert 语句: <insert id=”insertname”> insert into names (name) values (#{value}) </insert> 然后在 java 代码中像下面这样执行批处理插入: list < string > names = 阅读全文
posted @ 2020-11-29 12:33 咔啡 阅读(227) 评论(0) 推荐(0)
摘要: 您不应该这样做!Memcached 是一个非阻塞的服务器。任何可能导致 memcached 暂停或瞬时拒绝服务的操作都应该值得深思熟虑。向 memcached 中批量导入数据往往不是您真正想要的!想象看,如果缓存数据在导出导入之间 发生了变化,您就需要处理脏数据了; 阅读全文
posted @ 2020-11-29 12:30 咔啡 阅读(122) 评论(0) 推荐(0)
摘要: 推荐使用 Hessian 序列化,还有 Duddo、FastJson、Java 自带序列化。 阅读全文
posted @ 2020-11-29 12:29 咔啡 阅读(93) 评论(0) 推荐(0)
摘要: Mybatis 使用 RowBounds 对象进行分页,它是针对 ResultSet 结果集执行的内 存分页,而非物理分页。可以在 sql 内直接书写带有物理分页的参数来完成物理分 页功能,也可以使用分页插件来完成物理分页。 分页插件的基本原理是使用 Mybatis 提供的插件接口,实现自定义插件, 阅读全文
posted @ 2020-11-29 12:28 咔啡 阅读(571) 评论(0) 推荐(0)
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 55 下一页