乙巳🐍年

acc8226 的博客

Struts2 是 Struts 的下一代产品。它在 Struts 和 WebWork 的技术基础上进行了合并,产生了全新的 Struts2 框架。Struts2 修复了大量错误和漏洞,并且体系结构和第一代 Struts 存在巨大差别(因为其实 Struts2 主要是由 WebWork 衍生而来),我们接下来的 Struts 开发课程也以 Struts2 为基础。

体系架构

Struts2 的体系结构大致如下图所示:

图片描述信息

上图是 Struts2 的体系结构。一个请求在 Struts2 框架中的处理大概会经过以下几个步骤:

  • 1、客户端发出一个指向 Servlet 容器(例如 Tomcat)的请求。
  • 2、这个请求会经过几个过滤器 Filter(ActionContextCleanUp 可选过滤器、其他 Web 过滤器如 SiteMesh 等),最后到达 FilterDispatcher 过滤器。
  • 3、接着 FilterDispatcher 过滤器被调用,FilterDispatcher 询问 ActionMapper 来决定这个请求是否需要调用某个 Action。
  • 4、如果 ActionMapper 决定需要调用某个 Action,FilterDispatcher 把请求的处理交给 Action 对象的代理(ActionProxy)。
  • 5、ActionProxy 通过配置管理器(Configuration Manager)读取框架的相关配置文件(struts.xml 以及它包含的 *.xml 配置文件),找到需要调用的 Action 类。
  • 6、找到需要调用的 Action 类后,ActionProxy 会创建一个 ActionInvocation 的实例。
  • 7、ActionInvocation 在调用 Action 的过程之前,会先依次调用相关配置拦截器(Intercepter),执行结果返回 结果字符串。
  • 8、ActionInvocation 负责查找 结果字符串 对应的 Result,然后执行这个 Result,再返回对应的结果视图(如 JSP 等等)来呈现页面。
  • 9、再次调用所用的配置拦截器(调用顺序与第 7 步相反),然后响应(HttpServletResponse)被返回给浏览器。
阅读全文 »

ac 网址导航 (html)

只需推送 github 后会自动同步到 gitee

项目主页

1
origin git@github.com:acc8226/site-navigation.git

捷键 (ahk)

项目主页

1
2
origin git@github.com:acc8226/jiejian.git
at git@atomgit.com:acc8226/jiejian.git
阅读全文 »

vscode(跨平台,推荐)

不算重量,但是很强大。免费 + 功能插件 + 跨平台甚至良好对接 GitHub。

notepad–(跨平台,推荐)

非常轻量

Sublime text(跨平台 付费)

收费就算了

UltraEdit(跨平台 付费)

功能够用,但是商业公司推出的软件,采取付费订阅制。

Notepad 3(windows 平台)

Notepad3 - Notepad replacement with syntax highlighting. 使用体验一般般

阅读全文 »

安装 Plugman

npm install -g plugman

你必须在你的 PATH 上有 git,才能直接从远程 git url 安装插件。

添加 Plugin

1
plugman install --platform <ios|android> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]
1
2
3
4
5
6
7
$ plugman install
--platform <ios|android>
--project <directory> 项目所在目录
--plugin <name|url|path> 此存储库的内容将复制到`--plugins_dir`
[--plugins_dir <directory>] 默认为 `<project>/cordova/plugins`
[--www <directory>] 默认为项目的`www`, used as cordova project application web assets.
[--variable <name>=<value> [--variable <name>=<value> ...]]
阅读全文 »

工具类

Apktool

A tool for reverse engineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications. It also makes working with an app easier because of the project like file structure and automation of some repetitive tasks like building apk, etc.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
usage: apktool
-advance,--advanced prints advance information.
-version,--version prints the version then exits
usage: apktool if|install-framework [options] <framework.apk>
-p,--frame-path <dir> Stores framework files into <dir>.
-t,--tag <tag> Tag frameworks using <tag>.
usage: apktool d[ecode] [options] <file_apk>
-f,--force Force delete destination directory.
-o,--output <dir> The name of folder that gets written. D
-p,--frame-path <dir> Uses framework files located in <dir>.
-r,--no-res Do not decode resources.
-s,--no-src Do not decode sources.
-t,--frame-tag <tag> Uses framework files tagged by <tag>.
usage: apktool b[uild] [options] <app_path>
-f,--force-all Skip changes detection and build all fi
-o,--output <dir> The name of apk that gets written. Defa
-p,--frame-path <dir> Uses framework files located in <dir>.
阅读全文 »
0%