Hyper-Vマネージャー
クイック作成
Windows11開発環境
仮想マシンの作成
参考サイト
【Windows 11便利テク】Windows 11でより使いやすくなったHyper-V。サクッと無料で仮想環境を作ってみる - PC Watch
Hyper-Vマネージャー
クイック作成
Windows11開発環境
仮想マシンの作成
参考サイト
【Windows 11便利テク】Windows 11でより使いやすくなったHyper-V。サクッと無料で仮想環境を作ってみる - PC Watch
Modelクラス作成
新規スキャフォールディングアイテムの追加
「Entity Frameworkを使用したビューがあるMVCコントローラー」
→DbContextクラスにDbSet追加
パッケージマネージャーコンソール
Add-Migration xxx
Update-Database
参考サイト
実践 Entity Framework ~ マイグレーションとコマンド - インクリメンタルなカイハツにっき (hateblo.jp)
Webアプリケーション入門 - 株式会社サイエンス社 株式会社新世社 株式会社数理工学社 (saiensu.co.jp)
JavaによるWebアプリケーション入門 - サーブレット・JSP・Struts (fujiwaralab.net)
akitalab/bcat-v0: 図書管理システム コマンドライン版 bcat-v0 (github.com)
eclipseの場合
BookCatalogTest.java
import文でホバー
プロジェクト・セットアップの修正 - junitを追加
プロジェクト - プロパティ で確認
akitalab/bcat-v1: 図書管理システム Servlet版 bcat-v1 (github.com)
eclipseの場合
走り書き: eclipse servlet 動的Webプロジェクト (no15maid.blogspot.com)
src\main\java配下にjavaファイルを配置
importパッケージ名:javax → jakarta
src\main\webapp\WEB-INFにweb.xmlを配置
(web.xmlにwelcome-file-listを追加)
src\main\webapp配下にhtmlファイルを配置
htmlは<head>に<meta charset="UTF-8">を追加
index.htmlで右クリック - サーバーで実行
akitalab/bcat-v2: 図書管理システム JSP版 bcat-v2 (github.com)
akitalab/bcat-v2db: 図書管理システム JSP+DB版 bcat-v2db (github.com)
CREATE ROLE bcat LOGIN;
\password bcat
secret
CREATE DATABASE bcat WITH OWNER = bcat
ENCODING = 'UTF-8'
TABLESPACE = pg_default
LC_COLLATE = 'C'
LC_CTYPE = 'C'
CONNECTION LIMIT = -1;
create table bookcatalog (
bookid varchar(100) not null,
title varchar(100),
author varchar(100),
translator varchar(100),
publisher varchar(100),
publicationdate date,
code varchar(100),
status varchar(100),
keyword varchar(100),
memo varchar(100),
datacreator varchar(100),
datacreateddate timestamp(6),
primary key (bookid)
);
src\main\WEB-INF\libにpostgresql.jar(DBサーバーに適したバージョン)を配置
eclipse
ファイル ‐ 新規 ‐ 動的Webプロジェクト
(ターゲット・ランタイム → 実行時に指定)
srcフォルダで右クリック
新規 ‐ その他
ウィザードを選択 - Web ‐ サーブレット
HelloServlet.javaで右クリック
実行 ‐ サーバーで実行
サーバーの選択:ターゲット・ランタイムと同じものを選択
参考サイト
PostgreSQL エクスポートとインポート | ITSakura
cd "D:\Program Files\PostgreSQL\16\bin"
pg_dump -h localhost -p 5432 -U postgres -d ex_db1 > D:\pg_dump\dump1.txt
※フォルダは予め作成しておく
参考サイト
CREATE OR REPLACE PROCEDURE public.exception_test()
LANGUAGE 'plpgsql'
AS $BODY$
BEGIN
--RAISE EXCEPTION 'exception test 1';
RAISE EXCEPTION 'exception test 2' USING ERRCODE = '0A000';
--RAISE EXCEPTION SQLSTATE '0A000' USING MESSAGE = 'exception test 3';
EXCEPTION
WHEN OTHERS THEN
RAISE NOTICE 'SQLSTATE:% SQLERRM:%', SQLSTATE, SQLERRM;
END;
$BODY$;
create table sample_data (
id integer generated by default as identity,
info varchar(100),
created_by integer not null,
created_date timestamp(6) not null,
modified_by integer not null,
modified_date timestamp(6) not null,
ver integer not null,
primary key (id)
);
CREATE OR REPLACE PROCEDURE create_sample_data(in v_info VARCHAR)
LANGUAGE 'plpgsql'
AS $$
DECLARE
--v_user_id INTEGER := 9;
v_user_id sample_data.created_by%TYPE := 3;
BEGIN
BEGIN
FOR i IN 1..100 LOOP
INSERT INTO sample_data (
info, created_by, created_date, modified_by, modified_date, ver
) VALUES (
v_info || ':' || i, v_user_id, CURRENT_TIMESTAMP, v_user_id, CURRENT_TIMESTAMP, 0
);
END LOOP;
EXCEPTION
WHEN OTHERS THEN
RAISE NOTICE 'SQLSTATE:% SQLERRM:%', SQLSTATE, SQLERRM;
ROLLBACK;
RAISE;--呼出し元へのエラー伝達
END;
COMMIT;
END;
$$;
例外ハンドラを伴うブロック内ではトランザクションを終了できない
cannot commit while a subtransaction is active
参考サイト
pgAdmin
◆Procedures
右クリック
Create
Definition - Language : plpgsql
Code に $BODY$ の内側のみ記述
SQLで作成内容を確認(直接入力はできない)
または
◆Query ToolでSQLを実行してCreate
CREATE OR REPLACE PROCEDURE public.procedure1()
LANGUAGE 'plpgsql'
AS $BODY$
DECLARE
date_time VARCHAR(50);
BEGIN
SELECT now() INTO date_time;
RAISE INFO 'Hello world : %', date_time;
END;
$BODY$;
◆実行(Query Tool)
call public.procedure1();
File - Project Structure
Platform Settings - SDKs - JDK home path
Project Settings - Project - SDK - Add JDK (フォルダを選択)
Gradleの場合
Failed to calculate the value of task ':compileJava' property 'javaCompiler'.
Cannot find a Java installation on your machine matching this tasks requirements: {languageVersion=21, vendor=any vendor, implementation=vendor-specific} for WINDOWS on x86_64.
File - Settings
Build, Execution, Deployment - Build Tools - Gradle - Gradle JVM
Could not resolve all dependencies for configuration ':compileClasspath'.
> Failed to calculate the value of task ':compileJava' property 'javaCompiler'.
> Cannot find a Java installation on your machine matching this tasks requirements: {languageVersion=21, vendor=any vendor, implementation=vendor-specific} for WINDOWS on x86_64.
> No locally installed toolchains match and toolchain download repositories have not been configured.
create table sample_data (
id number(10,0) generated as identity,
info varchar2(100),
created_by number(10,0) not null,
created_date timestamp(6) not null,
modified_by number(10,0) not null,
modified_date timestamp(6) not null,
ver number(10,0) not null,
primary key (id)
);
CREATE OR REPLACE PROCEDURE CREATE_SAMPLE_DATA(v_info IN VARCHAR2) AS
v_user_id sample_data.created_by%TYPE := 3;
BEGIN
FOR i IN 1..100 LOOP
INSERT INTO sample_data (
info, created_by, created_date, modified_by, modified_date, ver
) VALUES (
v_info || ':' || i, v_user_id, CURRENT_TIMESTAMP, v_user_id, CURRENT_TIMESTAMP, 0
);
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(
'SQLCODE: ' || SQLCODE || ' SQLERRM: ' || SQLERRM);
ROLLBACK;
RAISE;--呼出し元へのエラー伝達
END CREATE_SAMPLE_DATA;
sql developer
プロシージャ 右クリック
新規プロシージャ
OKボタン
CREATE OR REPLACE PROCEDURE PROCEDURE1 AS
BEGIN
NULL;
END PROCEDURE1;
↓
CREATE OR REPLACE PROCEDURE PROCEDURE1 AS
message VARCHAR2(50);
date_time VARCHAR2(50);
BEGIN
SELECT SYSDATE
INTO date_time
FROM DUAL;
message := 'Hello world : ';
DBMS_OUTPUT.PUT_LINE(message || date_time);
END PROCEDURE1;
保存してから実行ボタン
(表示 - DBMS出力)
参考サイト
【Oracle】PL/SQL入門 #oracle - Qiita
PL/SQL ブロック、コメント - オラクル・Oracle PL/SQL 入門 (shift-the-oracle.com)
ソース:
参考サイト:
走り書き: oracle xe express edition windows インストール ~ ユーザ作成
sqlplus system/passwd@localhost:1521/XEPDB1
CREATE USER ex_vs
IDENTIFIED BY "example"
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp;
GRANT dba TO ex_vs;
参考サイト
【SE入門編】Oracle Database 21c Express Editionのインストール手順及びSQL Developerの設定手順 #sqldeveloper - Qiita
sqlplus system/password@localhost:1521/XEPDB1
デフォルトで作成された表領域を確認
select tablespace_name, file_name, bytes/1024/1024 MB
from dba_data_files;
表領域 - オラクル・Oracleをマスターするための基本と仕組み (shift-the-oracle.com)
必要に応じてcreate tablespace ...
ローカル管理表領域 - オラクル・Oracleをマスターするための基本と仕組み (shift-the-oracle.com)
create user ...
CREATE USER、ユーザーの作成 - オラクル・Oracleをマスターするための基本と仕組み (shift-the-oracle.com)
grant ...
走り書き: IntelliJでGitHub (no15maid.blogspot.com)
IntellJと同様にブラウザで承認したが
空のリポジトリーのみ作成された
(ここでcommit and pushが必要だったのかもしれない)
githubで空のリポジトリーを削除
プロジェクトを作り直し再度登録してみる(下記)
メニュー:vcs
enale version control integration
git
okボタン
メニュー:git
github
share project on github
shareボタン
(承認のダイアログなし・addボタン押下
→commit and pushがエラー・空のレポジトリのみ作成された
→再度commit and pushボタン押下してもエラー
→githubで空のレポジトリーを削除
→share project on githubから再度実施)
addしないでcancelボタン
→空のrepositoryのみ作成
commit and pushボタン
ユーザー設定ダイアログが出て設定後
push可能になった
gradle oracle
no29571/user-gradle-oracle: java spring boot sample...gradle, oracle, crud, validation, auditing, bootstrap, authority, foreign key, and so on... (github.com)maven postgresql
ブランチ
no29571/user at ex-hello (github.com)
no29571/user at ex-crud (github.com)
no29571/user at ex-validation (github.com)
no29571/user at ex-login (github.com)
no29571/user at ex-audit (github.com)
no29571/user at ex-lock (github.com)
no29571/user at ex-webjars (github.com)
no29571/user at ex-role (github.com)
no29571/user at ex-join (github.com)
各ブランチのメモ
走り書き: java spring maven helloworld (no15maid.blogspot.com)
走り書き: spring postgresql jpa crud (no15maid.blogspot.com)
走り書き: spring validation アノテーション (no15maid.blogspot.com)
走り書き: spring security ログインのカスタマイズ (no15maid.blogspot.com)
走り書き: spring jpa auditing (no15maid.blogspot.com)
走り書き: spring @Version 排他制御 FOR UPDATE (no15maid.blogspot.com)
走り書き: spring webjars bootstrap ナビゲーション (no15maid.blogspot.com)
走り書き: spring security role enum (no15maid.blogspot.com)
走り書き: spring 複合主キー 外部キー 結合 (no15maid.blogspot.com)
Hyper-Vマネージャー クイック作成 Windows11開発環境 仮想マシンの作成 参考サイト 【Windows 11便利テク】Windows 11でより使いやすくなったHyper-V。サクッと無料で仮想環境を作ってみる - PC Watch