Skip to content

Commit a8e0e22

Browse files
authored
Merge pull request #5 from clickear/master
feat: 新增数据库持久化
2 parents b0f6a4b + 54a80ec commit a8e0e22

File tree

4 files changed

+19
-3
lines changed

4 files changed

+19
-3
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ pids
1111

1212
.DS_Store
1313

14-
14+
out
1515
.idea
1616

1717
target

src/main/java/io/github/linyimin/plugin/service/MybatisDatasourceStateComponent.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* @author yiminlin
1717
* @date 2022/02/02 1:29 上午
1818
**/
19-
@State(name = "datasource", storages = {@Storage("datasource.xml")})
19+
@State(name = "mybatis-sql-view-datasource", storages = {@Storage("mybatis-sql-view-datasource.xml")})
2020
public class MybatisDatasourceStateComponent implements PersistentStateComponent<DatasourceConfiguration> {
2121

2222
private DatasourceConfiguration config;

src/main/java/io/github/linyimin/plugin/ui/MybatisSqlViewerToolWindow.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,15 @@ public void refresh(Project project) {
109109

110110
result.setText(config.getResult());
111111

112+
DatasourceConfiguration datasourceConfig = project.getService(MybatisDatasourceStateComponent.class).getState();
113+
assert datasourceConfig != null;
114+
115+
host.setText(datasourceConfig.getHost());
116+
port.setText(datasourceConfig.getPort());
117+
user.setText(datasourceConfig.getUser());
118+
password.setText(datasourceConfig.getPassword());
119+
database.setText(datasourceConfig.getDatabase());
120+
112121
// 默认每次打开,都展示第一个tab
113122
tabbedPane.setSelectedIndex(0);
114123

@@ -154,6 +163,13 @@ private void updateParams() {
154163
String urlText = String.format(Constant.DATABASE_URL_TEMPLATE, hostText, portText, databaseText);
155164

156165
String connectionInfo = MybatisSqlUtils.mysqlConnectTest(urlText, userText, passwordText);
166+
DatasourceConfiguration datasourceConfig = myProject.getService(MybatisDatasourceStateComponent.class).getState();
167+
assert datasourceConfig != null;
168+
datasourceConfig.setHost(hostText);
169+
datasourceConfig.setUser(userText);
170+
datasourceConfig.setPort(portText);
171+
datasourceConfig.setPassword(passwordText);
172+
datasourceConfig.setDatabase(databaseText);
157173
connectionInfoTextArea.setText(connectionInfo);
158174
});
159175

src/main/resources/META-INF/plugin.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
<codeInsight.lineMarkerProvider id="mybatis.sql.viewer.MapperInterfaceGenerateSqlLineMakerProvider" language="JAVA" implementationClass="io.github.linyimin.plugin.provider.generate.MapperInterfaceGenerateSqlLineMakerProvider" />
4444
<codeInsight.lineMarkerProvider id="mybatis.sql.viewer.MapperXmlGenerateSqlLineMakerProvider" language="XML" implementationClass="io.github.linyimin.plugin.provider.generate.MapperXmlGenerateSqlLineMakerProvider" />
4545

46-
<applicationService serviceImplementation="io.github.linyimin.plugin.service.MybatisDatasourceStateComponent" order="first" />
46+
<projectService serviceImplementation="io.github.linyimin.plugin.service.MybatisDatasourceStateComponent" order="first" />
4747
<projectService serviceImplementation="io.github.linyimin.plugin.service.MybatisSqlStateComponent" order="first" />
4848
<projectService serviceImplementation="io.github.linyimin.plugin.service.SqlParamGenerateService" order="first" />
4949

0 commit comments

Comments
 (0)