با توضیحاتی که شما دادین استفاده از trigger های دیتابیس گزینه خوبیه چون دو تا برنامه دارن مجزا دیتابیس رو دستکاری می کنند. راه حل pooling که خودتون استفاده می کنید هم بد نیست ولی بار اضافه روی دیتابیس خودتون میزارین.
اگر به کد پروژه C# دسترسی دارین یک راه دیگه هم می تونه این باشه که اون پروژه C# وقتی رکورد مورد نظر خودشو به دیتابیس اضافه کرد به برنامه جاوایی خبر بده مثلا با یک فراخوانی سرویس REST.